“定义了太多字段”;错误
本文关键字:错误 字段 太多 定义 | 更新日期: 2023-09-27 18:12:17
不知道为什么我得到"Too Many Fields Defined"
错误,即使我只是试图在其中创建6
列的Excel表。我认为限制是255
列。
我的代码是这样的:
using (OleDbConnection conn = new
OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:''MyFile.xls;Extended Properties='Excel 12.0 Xml;HDR=Yes'"))
{
conn.Open();
var schema = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
if (schema.Rows.OfType<DataRow>().Any(r => r.ItemArray[2].ToString().ToLower() == "sheet1"))
{
cmd .CommandText = "DROP TABLE [Sheet1]";
cmd.ExecuteNonQuery();
}
cmd.CommandText = "CREATE TABLE [Sheet1] ([C1] string, [C2] string, [C3] string, [C4] string, [C5] string, [C6] string)";
cmd.ExecuteNonQuery();
}
我错过了什么吗?
天哪。刚将文件扩展名更改为xlsx
,现在可以工作了。
OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:''MyFile.xlsx;Extended Properties='Excel 12.0 Xml;HDR=Yes'"))