使用c#和MS Access SQL创建表

本文关键字:SQL 创建 Access MS 使用 | 更新日期: 2023-09-27 18:15:56

我试图在我的数据库中创建一个表,我被告知我的SQL语法有错误。我也不知道在哪里。

objOleDbCommand.CommandText = "CREATE TABLE PersonalData (" +
    "[DataID] AUTOINCREMENT NOT NULL PRIMARY KEY ," +
    "[Type] VARCHAR(40) NOT NULL ," +
    "[URL] VARCHAR(40) NOT NULL ," +
    "[SoftwareName] VARCHAR(40) NOT NULL ," +
    "[SerialCode] VARCHAR(40) NOT NULL ," +
    "[UserName] VARCHAR(40) NOT NULL ," +
    "[Password] VARCHAR(40) NOT NULL";
objOleDbCommand.ExecuteNonQuery();

使用c#和MS Access SQL创建表

你好像少了一个右括号。此外,为了使代码更具可读性,可以考虑使用@""结构,它允许多行字符串字面量:

objOleDbCommand.CommandText = @"CREATE TABLE PersonalData (
    [DataID] AUTOINCREMENT NOT NULL PRIMARY KEY,
    [Type] VARCHAR(40) NOT NULL,
    [URL] VARCHAR(40) NOT NULL,
    [SoftwareName] VARCHAR(40) NOT NULL,
    [SerialCode] VARCHAR(40) NOT NULL,
    [UserName] VARCHAR(40) NOT NULL,
    [Password] VARCHAR(40) NOT NULL
)";

您在末尾缺少一个右括号。即:

  objOleDbCommand.CommandText = "CREATE TABLE PersonalData (" +
                "[DataID] AUTOINCREMENT NOT NULL PRIMARY KEY ," +
                "[Type] VARCHAR(40) NOT NULL ," +
                "[URL] VARCHAR(40) NOT NULL ," +
                "[SoftwareName] VARCHAR(40) NOT NULL ," +
                "[SerialCode] VARCHAR(40) NOT NULL ," +
                "[UserName] VARCHAR(40) NOT NULL ," +
                "[Password] VARCHAR(40) NOT NULL)";
            objOleDbCommand.ExecuteNonQuery();