1
はレコードの一致出力がない場合、私は PythonループクエリMySQL - クエリ結果が更新されていませんか?
while True:
print "running SQL query"
cursor.execute('select * from sites where stage="NEW"')
results = cursor.fetchall() #Fetch results
for row in results:
print "change detected" #simplified line for testing
print "sleeping"
sleep(10)
、MySQLを照会するPythonコードの小さなビットを持っている:
running SQL query
sleeping
running SQL query
sleeping
手動で(にループのための時間を確保一致するSQLレコードを作成リピート)、出力はまだです:予想通り
running SQL query
sleeping
running SQL query
sleeping
停止スクリプトと再起動、テスト出力は次のようになります。
running SQL query
change detected
sleeping
結果はキャッシュされていますか?またはクエリは再実行されませんか?私はこれに対処する方法を
は、念頭にクエリが(私は毎回DB接続を閉じて再度開く方法について不思議をしましたが、これは、過剰なようだ?)かなり頻繁に実行される
ありがとう、これは動作するようです。私のコードはデータベースに書き込まれていないので、まだちょっと混乱しています(私はコミットが変更を適用するだけだと思っていました)。私は今、このコードが変更を加えていないのに、コミットが '完了/終了'して、クエリが繰り返されるとき(私のコードで)、私は新しいセットを見ています以前のクエリの結果ではなく結果です。 – user1676300
まさに!質問は解決しました:) –