在C#windows应用程序中使用Excel 2007工作表作为数据库时遇到异常

时间:2012-03-08 08:43:58

标签: c# ado.net excel-2007 oledb

我正在尝试获取Excel 2007文档的信息,假设我的代码如下所示:

OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + path+  " ; Extended Properties=Excel 12.0;HDR=YES");
con.Open();
OleDbCommand cmd = new OleDbCommand("Select Name from Table$ where Number = "+textBox1.Text +"",con);
label1.Text = cmd.ExecuteScalar().ToString();
con.Close();

现在con.open();我的异常为Could not find installable ISAM.

这意味着什么,我该怎么做才能解决这个问题。

1 个答案:

答案 0 :(得分:0)

尝试在数据源周围放置单引号,并在扩展属性周围加双引号:

OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0; Data Source='" + path+  "'; Extended Properties=\"Excel 12.0;HDR=YES\"");

还要检查已安装的JET版本: