Pymysqlがピットに遭遇し、データを更新した後、フィールドデータの再読み取りが更新されません。

小さなスクリプトを記述して、データベースとしてMySQLを使用する準備をします。Redisは十分に学習していないため、使用したくありません。

ロジックはこれです。ここでデータの一部を探し、このデータが存在する場合は属性を割り当て、存在しない場合はタスクを実行してデータベースに書き込みます。

次に、検索データを再度実行し、オブジェクト属性を書き込みます。

  #ユーザーのuidを初期化します
    。uid はユーザーの収入データベーステーブルからdef _initialize_uid(self)を読み取ることができます
        uid_info = self.db.selectDb(SEARCH_USER_UID、(self.account、))
        #読み取れない場合は、ユーザーの損益計算書と新しいデータを実行します。
        if uid_info:
            self.uid = uid_info [0] [0] 
        else:
            印刷(123)
        #データベース情報を書き込み、 if get_money_income(self.account)[0]: time.sleep(2)
          #メソッドを再実行して読み取るデータの取得 self._initialize_uid()

 データベースが一貫したリンクを維持している場合、この再帰モデルを使用すると、書き込まれたデータのデータベース情報を読み取ることができないことがわかりました。今のところ良い方法はありません。

唯一の解決策は、検索するたびに新しい接続オブジェクトを作成することですが、この場合、データベースへの圧力が高まります。

 

将来的には、プロデューサーとコンシューマーの関係と同様に、データベース操作にも多くのスレッドを使用します。1回の書き込みで、1回の読み取りでデータベースと新しいデータベースを読み取ることができます。単一のスレッドがそれ自体を書き込み、書き込みデータの読み取りを完了することはできませんか? ?

この場合、使用するのは非常に面倒です。解決策があるかどうかを確認するためのフォローアップ

おすすめ

転載: www.cnblogs.com/sidianok/p/12727409.html