我有XLSX文件,我需要来自C#应用程序的该文件中的idProduct更新说明字段。
连接我使用:
string connectionString = string.Format(
@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=Excel 12.0;",
tbFileXLS.Text.Trim());
OleDbConnection connection = new OleDbConnection(connectionString);
string sql = string.Format(
@"UPDATE [Sheet1$] SET [Description] = '{0}' WHERE [ProductID] = '{1}'",
htmlDescription.Replace("'", "''"),
idProduct
);
但是当我尝试运行该查询时
OleDbCommand command = new OleDbCommand(sql, connection);
connection.Open();
int count = command.ExecuteNonQuery();
connection.Close();
它会抛出错误:
该字段太小,无法接受您尝试的数据量 加。尝试插入或粘贴较少的数据。
谁知道如何解决这个问题?
感谢。
答案 0 :(得分:1)
无法通过OleDB执行此操作。
我使用的是Microsoft.Office.Interop.Excel;相反,在循环中找到记录并更新Cell [i,j] = description。它有点慢,但像一个魅力。谢谢!