使用OleDB方式操作Excel,删除表中的数据时提示该错误
相关代码:
连接字符串:
//定义OleDB连接字符串
string strConn = "Provider=Microsoft.Ace.OleDb.12.0;Persist Security Info=False;" + "data source=" + @excelPath + ";Extended Properties='Excel 12.0; HDR=yes; IMEX=10'";
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = strConn;
执行删除的代码:
try
{
cmd = new OleDbCommand("Drop Table [" + roadmapTableName + "]", conn);
cmd.ExecuteNonQuery();
}
catch (System.Exception ex)
{
textBox1.Text += ("删除数据表失败:" + ex.Message);
textBox1.Text += ("\r\n");
//该 ISAM 不支持在链接表中删除数据。
cmd = new OleDbCommand("Delete From [" + roadmapTableName + "]", conn);
cmd.ExecuteNonQuery();
}
原来Excel不支持删除,DELETE FROM sheet1 报错“该ISAM不支持在链接表中删除数据”。因为Excel工作表中的行与真正的关系型数据库的行是有些不一样的,所以如果通过编程来访问Excel工作表的数据,那么检索
OleDB操作Excel删除数据的限制与解决方法

使用OleDB与Excel交互时,遇到'该ISAM不支持在链接表中删除数据'的错误。由于Excel的特性,删除整行数据受限,只能逐个单元格清空。此外,删除包含公式的单元格也会导致错误。解决方案包括通过更新语句清空单元格内容,或借助MSSQL做中转物理删除。
最低0.47元/天 解锁文章
6798

被折叠的 条评论
为什么被折叠?



