C# 使用OLEDb将数据插入Excel表格
我的代码看起来像C# 使用OLEDb将数据插入Excel表格,c#,oledbcommand,C#,Oledbcommand,我的代码看起来像 using System.Data.OleDb; namespace ConsoleApplication21 { class Program { static void Main(string[] args) { string constr2 = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Sourc
using System.Data.OleDb;
namespace ConsoleApplication21
{
class Program
{
static void Main(string[] args)
{
string constr2 = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\productivity\temp.xlsx;Extended Properties='Excel 8.0;HDR=no'";
OleDbConnection conn = new OleDbConnection(constr2);
conn.Open();
OleDbCommand INSERTcommand = new OleDbCommand();
INSERTcommand.Connection = conn;
INSERTcommand.CommandText = "create table [table3] (id INT, name VARCHAR, datecol DATE);";
INSERTcommand.ExecuteNonQuery();
OleDbCommand INSERTDATA = new OleDbCommand();
INSERTDATA.Connection = conn;
INSERTDATA.CommandText = "INSERT INTO [table3] (id,name,datecol) values (1,'aaaa','25-01-2012');";
INSERTDATA.ExecuteNonQuery();
}
}
}
执行上述代码后,异常显示:
INSERT INTO语句包含以下未知字段名:
“id”。确保键入的名称正确,然后尝试
再次手术
如果在插入时忽略列规范,则可以正常工作:
INSERTDATA.CommandText=“插入[table3]值(1,'aaaa','25-01-2012');”代码>您是否可以省略id列并检查其余部分是否有效?也可以像使用tablename一样使用括号进行检查<代码>插入到[表3]([id]、[name]、…)值中代码>我省略了id列,但仍然存在相同的问题,而且我尝试了([id]、[name]、…)也不工作,并且“创建表[table3](id INT…
工作无误?是”创建表[table3]…工作有误你检查过这个答案吗?@Saher