用C#查询Excel文件,用数字单元格问题
我正在查询Excel文件以检索数据logging并将其显示在监视工具中。 事情是,当我试图select一个logging与它的ID,与下面的请求,它会引发执行查询时的错误:
ExecuteCommandTextErrorHandling
告诉我查询中的types与目标单元格不兼容。
我的请求看起来像
SELECT TOP 20 [Fields...] FROM [RECORD$] WHERE (([id] = '1'))
id列可以包含多个数字,所以它的单元格types是标准的默认types。
我的问题是 :我怎样才能获取logging而不知道它的types?
我是否必须执行列types,如果是这样的话? 我是否必须赶上例外情况,并重试没有引号?
这里是用于查询Excel文件和我的连接string的代码
public static DataTable queryXlsFile(String query, OleDbConnection dbConnection) { OleDbDataAdapter dbCommand = new OleDbDataAdapter(query, dbConnection); DataTable dt = new DataTable(); dbCommand.Fill(dt); return dt; } Provider=Microsoft.ACE.OLEDB.12.0; data source=C:\\test\\321.xls; Extended Properties=\"Excel 8.0;HDR=Yes;\";
提前致谢。
尝试添加IMEX = 1;
HDR =是; IMEX = 1"
如果你有很多行,types是最多的types,否则types取决于第一行,一个答案的types是string。
- 用于EXCEL的OLEDB – 删除表 – 不删除工作表
- 如何使用NetOffice重命名Excel工作表?
- EPPlus:使用外部连接的dynamic数据透视表
- 使用C#将SQL Server 2008表导出到Excel
- 任何想法,为什么我得到的错误“列号必须在1和16384之间?
- 不能将types“对象”隐式转换为“Microsoft.Office.Interop.Excel.Worksheet”。 存在明确的转换(您是否缺less演员?)
- 使用c#在CSV文件中用双引号括起每个字段
- 将数据表保存到vb.net winform应用程序的excel表中
- 使用Excel修改C#中的ClearQuest中的CR