Excel列名称

时间:2008-09-17 20:50:49

标签: excel ado.net

使用ADO创建Excel电子表格时,无法使用哪些列名称。

我有一个声明,可以在电子表格中创建一个页面:

CREATE TABLE [TableName] (Column string, Column2 string);

我发现使用列名DateContainer会在执行语句时产生错误。

是否有人拥有不能用作列名的完整(或部分)单词列表?这适用于用户驱动的环境,最好“修复”列而不是崩溃。

我的解决方法是分别用DateContainer取代Date_Container_的任何出现。

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

这似乎更像是SQL保留字的问题。这是good list

答案 2 :(得分:0)

您可以对任何字段名使用括号,例如:

CREATE TABLE [TableName] ([Date] string, [Container] string)

完整示例:

using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\temp\\test.xls;Extended Properties='Excel 8.0;HDR=Yes'"))
{
  conn.Open();
  OleDbCommand cmd = new OleDbCommand("CREATE TABLE [TableName] ([Date] string, [Container] string)", conn);
  cmd.ExecuteNonQuery();
}