我有一个Excel文件,并在其中定义了两列Date,Result。

我想用C#在其中插入数据。

我使用此代码:

 string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + System.AppDomain.CurrentDomain.BaseDirectory + "\\Data\\sms log.xlsx;Extended Properties=Excel 12.0;";

            OleDbConnection myConnection = new OleDbConnection(connectionString);
          if(myConnection.State==System.Data.ConnectionState.Closed)  myConnection.Open();
            OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand();
            myCommand.Connection = myConnection;
            myCommand.CommandText =string .Format( "Insert into TABLE  [Sheet1$](DateTime,Result)values('{0}','{1}')",DateTime.Now,false) ;
            myCommand.ExecuteNonQuery();
            myConnection.Close();


但是我在INSERT INTO语句中收到此错误:语法错误。

最佳答案

试试这个语法:

myCommand.CommandText = "Insert into [Sheet1$] (id,name) values('5','e')";

10-06 14:43