私はデータベースを作成し、いくつかの選択肢でデータベースをクエリする毎秒1回実行する無限ループに入るpythonスクリプトを持っています。SQLiteデータベースはSELECT句でロックされます
同時に私はsqlite cliを使用してデータベースに接続し、更新を試みますが、データベースがロックされたエラーが発生します。ここで
スクリプトの(匿名化)コード:
import sqlite3
import time
con = sqlite3.connect(r'path\to\database.sqlite')
con.execute('DROP TABLE IF EXISTS blah;')
con.execute('CREATE TABLE blah;')
con.execute('INSERT INTO blah;')
con.commit()
while True:
result = con.execute('SELECT blah')
print(result.fetchone()[0])
time.sleep(1)
'fetchone'、' result.close() 'の後にカーソルを閉じることができます –
@JoachimIsaksson私はうまくいきませんでした – Hidden
CLの答えはおそらく助けになるでしょうトランザクション管理が組み込まれています –