我在尝试向一个已经存在的表对象中插入行时遇到了困难。以下是我的代码片段:
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + @"C:\myExcelFile.xlsx" + ";Extended Properties=\"Excel 12.0;ReadOnly=False;HDR=Yes;\"";
using (OleDbConnection conn = new OleDbConnection(connectionString))
{
conn.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = conn;
string insertQuery = String.Format("Insert into [{0}$] (ID, Title,NTV_DB, Type ) values(7959, 8,'e','Type1')", TabDisplayName);
cmd.CommandText = insertQuery;
cmd.ExecuteNonQuery();
cmd = null;
conn.Close();
}
作为结果,我在一个现成的表对象下插入了我的行:
我还尝试过像这样将数据插入到表对象中:
string insertQuery = String.Format("Insert into [{0}$].[MyTable] (ID, Title,NTV_DB, Type ) values(7959, 8,'e','Type1')", TabDisplayName);
但是我遇到了一个错误:
Microsoft Access 数据库引擎找不到对象“MyTable”。请确保该对象存在,并正确拼写其名称和路径。如果“MyTable”不是本地对象,请检查您的网络连接或联系服务器管理员。
从上面可以看出,名为 MyTable
的表确实存在。如果有人能解决这个谜团,我将不胜感激。