Oledb 异常未处理。操作必须使用可更新的查询

Posted

技术标签:

【中文标题】Oledb 异常未处理。操作必须使用可更新的查询【英文标题】:Oledb exception was unhandled. Operation must use an updateable query 【发布时间】:2014-06-23 09:10:46 【问题描述】:

我正在尝试将值插入到 Excel 工作表中,当我调试它时,它显示未处理的 thaat OLedb 异常。操作必须使用可更新的查询。 这是我的代码

 string sql = "";
 sql = sql + " Insert into [Sheet1$] (ph1, type1, lines1, ph2, type2, lines2, ph3, type3, lines3, ph4, type4, lines4, stdcode) values ('" + PhoneNumbers[i, 0] + "','" + PhoneNumbers[i, 1] + "','" .........+ "','" + PhoneNumbers[i, 11] + "','" + PhoneNumbers[i, 12] + "'); ";
  System.Data.OleDb.OleDbConnection MyConnection;
                    System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand();

                    MyConnection = new System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"");
                    MyConnection.Open();
                    myCommand.Connection = MyConnection;

                    myCommand.CommandText = sql;
                    myCommand.ExecuteNonQuery();
                    MyConnection.Close();

谁能告诉我如何插入数据而不出现此异常。

【问题讨论】:

【参考方案1】:

也许您的应用程序没有写入 excel 文件的权限。 检查文件是否为只读并将其更改为具有读/写访问权限。

【讨论】:

拥有所有权限 文件所在的文件夹也不是只读的?

以上是关于Oledb 异常未处理。操作必须使用可更新的查询的主要内容,如果未能解决你的问题,请参考以下文章

oledb 异常未处理

Paradox 插入数据操作必须使用可更新查询

部署后“操作必须使用可更新查询”

Excel 数据到 Access DB - 获取:操作必须使用可更新查询错误

更新行给出错误操作必须使用可更新查询

悖论数据库的java更新查询