c# - 更新sqlite记录时C#程序卡住

标签 c# sqlite sql-update

我需要帮助 ,

我有一个只有3条记录的表,并且我尝试仅更新其中一条,

我正在尝试使用SQLite浏览器执行SQL命令,并且可以正常运行

但是,当我在C#中使用相同的完全相同的SQL时,程序将冻结(错误的任何异常都不会冻结)。

这是这些行:

query = new SQLiteCommand();
query.CommandText = "UPDATE athletes SET finishing_time = 123123123 WHERE epc = 'E2:00:30:73:99:02:01:31:16:70:6A:A3'";
query.Connection = m_dbConnection;
query.ExecuteNonQuery();


我尝试了多种方法,

我尝试了SQLite Parameters,

我尝试了字符串fromatting,也尝试了上面的直接方法。

它们都导致了相同的问题,程序冻结。

这是我第一次使用sqlite和c#。

所以我希望可以在这里找到帮助。

更新:冻结后,我等待了大约3至4分钟,我得到了异常数据库被锁定的信息。

最佳答案

找到了 ,

我有打开的SQLiteDataReader对象,这导致了问题。
我将SQLiteDataReader放在using {}中,问题已解决。

关于c# - 更新sqlite记录时C#程序卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37380398/

相关文章:

具有可选属性的 Java SQL PreparedStatement UPDATE

c# - 通用 FromEvent 方法

c# - LINQ to Entities 无法识别方法 'System.Threading.Tasks.Task`

java - 使用 SQLiteOpenHelper onCreate() 方法时向 sqlite 插入 2 行

java - 实时从 Sqlite 向 recyclerView 添加数据?

sqlite - SQLite 的可扩展性如何?

PostgreSQL : Update column with same vaue

PHP/MySQL : Combine UPDATE queries?

c# - 将 OBJECT 转换为 System.Drawing.Color

c# - 如何在另一个用户控件中使用一个 asp.net 用户控件?