代码之家  ›  专栏  ›  技术社区  ›  Brad Bruce

Excel列名

  •  0
  • Brad Bruce  · 技术社区  · 16 年前

    使用ADO创建Excel电子表格时不能使用哪些列名称。

    我有一个在电子表格中创建页面的语句:

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

    我发现使用 Date Container 将在执行语句时生成错误。

    是否有完整(或部分)的单词列表不能用作列名?这是在用户驱动的环境中使用的,与其崩溃,不如“修复”列。

    我在这方面的工作是取代 日期 集装箱 具有 Date_ Container_ 分别。

    3 回复  |  直到 16 年前
        1
  •  0
  •   Panos    16 年前

    您可以将括号用于任何字段名,例如:

    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();
    }
    
        3
  •  0
  •   Swati Markus    16 年前

    这更像是SQL保留字的问题。这是一个 good list