c# - 使用 OLEDB 写入 excel 文件

标签 c# excel oledb

有谁知道如何在 C# 中通过 OLEDB 写入 excel 文件 (.xls)?我正在执行以下操作:

   OleDbCommand dbCmd = new OleDbCommand("CREATE TABLE [test$] (...)", connection);
   dbCmd.CommandTimeout = mTimeout;
   results = dbCmd.ExecuteNonQuery();

但是我收到一个 OleDbException 抛出消息:

"Cannot modify the design of table 'test$'. It is in a read-only database."

我的连接似乎很好,我可以很好地选择数据,但我似乎无法将数据插入 excel 文件,有人知道我如何通过 OLEDB 获得对 excel 文件的读/写访问权限吗?

最佳答案

我也在寻找答案,但 Zorantula 的解决方案对我不起作用。 我在 http://www.cnblogs.com/zwwon/archive/2009/01/09/1372262.html 上找到了解决方案

我删除了 ReadOnly=false 参数和 IMEX=1 扩展属性。

IMEX=1 属性以导入模式打开工作簿,因此结构修改命令(如 CREATE TABLEDROP TABLE)不要'工作。

我的工作连接字符串是:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=workbook.xls;Mode=ReadWrite;Extended Properties=\"Excel 8.0;HDR=Yes;\";"

关于c# - 使用 OLEDB 写入 excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57987/

相关文章:

c# - 尝试使用 ManagedEsent 访问/附加 ESE 数据库时出现问题

mysql - 从包含超过 300 列的 csv、txt 或 xls 文件创建 MySQL 表

c# - 保持应用程序数据库不可知(ADO.NET 与封装数据库逻辑)

c# - C#asp.net中UPDATE语句中的语法错误

excel添加保存内部数据?

mysql - SQL Server 到 MySQL 数据传输

c# - 如何从浏览器应用程序控制扫描仪?

c# - 实现 C# 控制台应用程序的正确方法?

c# - WPF : How to change the MouseOver/Selected background colour of a GridView row

VBA Excel : Getting result for multiple cells