繁体   English   中英

C#.NET Excel和OLEDB连接字符串

[英]C#.NET Excel and OLEDB Connection String

我正在尝试将Excel文件中的数据读入我的Windows应用程序。

连接字符串:

provider = Microsoft.Jet.OLEDB.4.0; Data Source = "Excel File"; 
Extended Properties =    \"Excel 8.0; HDR = Yes; ImportMixedTypes = Text;
Imex = 1;\" 

使用此连接字符串, 即使Microsoft Office - Excel未安装到计算机上,我也可以从Excel文件中读取数据。 但有些如何,我的程序与此连接字符串不兼容。

我现在使用的连接字符串是

provider = Microsoft.ACE.OLEDB.12.0; Data Source = "Excel file"; 
Extended Properties = "Excel 12.0; HDR = Yes; Imex = 1;

此连接字符串与我的程序兼容,但它仅适用于具有Microsoft Office - Excel安装的计算机。

任何人都可以建议我在哪里犯错误。

谢谢。

Microsoft在2003年之后删除了所有版本Windows中的JET引擎,包括64位Windows 2003. ACE是现代替代方案,但它不随Windows的基本安装一起分发。

要使用ACE,您需要将免费的ACE可再发行组件从Microsoft部署到未安装Office的所有目标计算机。 然后,您可以使用您在其中任何一个上列出的第二个连接字符串。

从这里获取它: http//www.microsoft.com/en-us/download/details.aspx?id = 13255

如果你可以使用第三方库,那里有一个非常好的项目,它提供了使用Linq来访问excel文件。 请访问: http//code.google.com/p/linqtoexcel/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM