HelpNeeder
HelpNeeder

Reputation: 6490

Creating a table by using C# and MS Access SQL

I am trying to create a table in my database by I am being told that there is an error in syntax of my SQL. And I can't really tell where.

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();

Upvotes: 1

Views: 6914

Answers (2)

Coding Flow
Coding Flow

Reputation: 21881

You are missing a closing bracket at the end. IE:

  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();

Upvotes: 1

Jørn Schou-Rode
Jørn Schou-Rode

Reputation: 38376

You seem to be missing a closing parenthesis. Also, to make the code slightly more readable, consider using the @"" construct, which allows multi line string literals:

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
)";

Upvotes: 6

Related Questions