在单个SqlCeCommand中执行多个create table语句

时间:2016-05-05 08:49:29

标签: c# sql-server-ce

我试图针对将在数据库中创建几个表的SQL Server CE数据库运行SQL语句。

我的SQL语句非常简单......

CREATE TABLE APPOINTMENTS 
(
     [SUBJECT] NVARCHAR(50) NULL, 
     START NVARCHAR(21) NULL, 
     ENDDATE NVARCHAR(21) NULL, 
     NOTES NVARCHAR(250) NULL
);

CREATE TABLE AppointmentsRemove
(
     [SUBJECT] NVARCHAR(50) NOT NULL
);

然后我使用以下代码运行它....

注意:我必须创建.sdf数据库文件以及针对它运行脚本:

using (SqlCeConnection conn = new SqlCeConnection(connectionString))
{
    SqlCeCommand cmd = new SqlCeCommand();

    SqlCeEngine en = new SqlCeEngine(connectionString);
    en.CreateDatabase();

    cmd.Connection = conn;
    conn.Open();

    //Create the initial tables..
    cmd.CommandText =
        @"CREATE TABLE APPOINTMENTS ([SUBJECT] NVARCHAR(50) NULL, START NVARCHAR(21) NULL, ENDDATE NVARCHAR(21) NULL, NOTES NVARCHAR(250) NULL); 
            CREATE table AppointmentsRemove([SUBJECT]  nvarchar(50) not null);";
    cmd.CommandType = CommandType.Text;
    cmd.ExecuteNonQuery();
}

我不断收到以下错误......

  

解析查询时出错。 [令牌行号= 2,令牌行偏移= 29,令牌错误=创建]

我已经完成了一些实验,如果我自己运行每个创建表语句,它就会起作用,但只要它们放在一起我就会遇到上述错误。

任何帮助表示感谢。

0 个答案:

没有答案