尝试插入新记录时访问“必须使用可更新查询”

时间:2017-07-26 16:11:23

标签: c# ms-access

我遇到以下问题,在尝试将新记录插入Access数据库时,我得到“必须使用可更新的查询”。

代码是:

OleDbConnection Conn = new
OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data 
Source=Checkbook.accdb;");
string SQL = "Insert into Category (CategoryDescription) values('Pizza')"
OpenDatabase(); //This does a Conn.Open();
OleDbCommand myAccessCommand = new OleDbCommand(SQL, Conn);
myAccessCommand.ExecuteNonQuery();
CloseDatabase();

1 个答案:

答案 0 :(得分:0)

您的代码应该正常工作。假设open和close方法中缺少的代码没有做任何异常。通过将文件设置为只读文件系统,可以轻松复制您看到的错误。您可以在属性窗口中验证它。

Read Only Database

如果您看到选中了只读复选框,则可以在Windows资源管理器中的文件属性中将其删除。

如果您没有看到文件设置为只读,并且您具有正确的文件权限,请查看是否还有其他锁定文件的内容。您可以通过创建新的访问数据库并重新创建表并将代码指向测试数据库来对此进行测试。如果发生相同的错误,您知道计算机上存在全局问题。如果您遇到同样的问题,可能是原始数据库存在问题。