c# - 使用 Oledb 导出到没有标题的 excel 文件 c#

标签 c# oledb oledbconnection oledbcommand

我正在使用 OleDB,我想将我的对象导出到 excel 表中。工作表中的每一行都是我的对象之一。问题是当工作表中没有列标题时,我不知道如何插入数据。

这个:

commandString = "Insert into [Sheet1$] values('test1', 'test2')"

抛出这个异常:

Number of query values and destination fields are not the same.

我的连接字符串是:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+filename+";Extended Properties='Excel 8.0;HDR=No'"

最佳答案

如果连接字符串包含 HDR=NO,则 Jet OLE DB 提供程序会自动为您命名字段(第一个字段为 F1,第二个字段为 F2,依此类推)。 我将尝试以这种方式更改您的查询

commandString = "Insert into [Sheet1$] (F1, F2) values('test1', 'test2')" 

这只有在您创建了 excel 文件并在 Sheet1 中第一行的前两个单元格中插入了一些内容后才有效

关于c# - 使用 Oledb 导出到没有标题的 excel 文件 c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10223784/

相关文章:

c# - 我必须使用 SVN API 或库访问/提交/更新 WPF 应用程序中的 SVN 存储库

c# - 使用 .NET MVC Controller 操作作为 HTML <img> 的源

c# - ORA-00936 : missing expression when filling dataset to OracleDataAdapter

c# - 'Microsoft.Jet.OLEDB.4.0' 提供者未在本地机器上注册

sql-server - ADO 与 OLE DB 有什么关系?

c# - 如何强制 ADO.Net 在阅读器 TableSchema 中仅使用 System.String 数据类型

c# - 散列非 ascii 字符 C#

C# WinForm - 关闭主窗体时 EXE 不会终止

c# - 在 conn.Open() 中出错;在 Asp.net visual studio 2012 中

c# - Microsoft Office Access 数据库引擎无法打开或写入文件 ''