私はC#アプリケーションを使用しており、Windowsサービスとしてサーバーマシンでアプリケーションを実行しています。クライアントマシンから挿入、更新、削除操作を実行すると、以下のようにデータベースロックエラーがスローされます。
database is locked
at System.Data.SQLite.SQLite3.Step(SQLiteStatement stmt)
at System.Data.SQLite.SQLiteDataReader.NextResult()
at System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
at System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
at System.Data.SQLite.SQLiteTransaction.Commit()
以下は私のコードです
public int ExecuteNonQuerySQL(SQLiteCommand cmd)
{
int ireturn = 0;
if (conn.State != ConnectionState.Open)
Open(DataFile);
using (SQLiteTransaction dbtrans = conn.BeginTransaction(IsolationLevel.ReadCommitted))
{
using (cmd.Connection=conn)
{
cmd.CommandText =cmd.CommandText ;
cmd.Transaction = dbtrans;
ireturn = cmd.ExecuteNonQuery();
dbtrans.Commit();
cmd.Dispose();
}
}
}
これで私を助けてください、私はたくさんのグーグルをやったので、これを解決するための解決策を見つけなければなりません。よろしく