1
私は2つのアプリケーションを持っています。 これらのうちの1つはデータベースにデータを書き込む必要があり、もう1つはデータを読み込む必要があります。 しかし、 "リーダー"は例外 "データベースロック"をスローします。2つの異なるJavaアプリケーションからSQLiteデータベースへの読み書き
このような状況では、どのような方法がありますか。
私は2つのアプリケーションを持っています。 これらのうちの1つはデータベースにデータを書き込む必要があり、もう1つはデータを読み込む必要があります。 しかし、 "リーダー"は例外 "データベースロック"をスローします。2つの異なるJavaアプリケーションからSQLiteデータベースへの読み書き
このような状況では、どのような方法がありますか。
データベース分離レベルは、シリアライズ可能に設定されているように見えますが、これは4つの中で最も高いレベルです。 2つのアプリケーションが同時にデータベースにアクセスできるため、書き込み専用のデータは更新されているが、まだコミットされていない間は、読み出し専用のデータは未コミットのデータを読み取ることができます。
したがって、別のデータベースが更新されている間にデータを読み込みたい場合は、データベースの分離レベルを変更できます。それが役に立てば幸い。
申し訳ありませんが、分離レベルを設定した例が見つかりません:( – christo
@christoはあなたのタグに基づいて、私はあなたがsqliteを使用していると仮定して、単にPRAGMAを設定しますread_uncommitted = True; sqlite.org/sharedcache.html –