我正在尝试手动迁移中填充新表。
我成功创建了表格,但在插入时遇到问题。
var sql = @"CREATE TABLE[DefaultSettings] ([Id] int IDENTITY (1, 1) NOT NULL
, [Tag] nvarchar(63) NOT NULL
, [ValueInt] int NULL
, [ValueDate] datetime NULL
, [ValueChar] nvarchar(255) NULL);";
dbContext.Database.ExecuteSqlCommand(sql);
sql = @"ALTER TABLE[DefaultSettings] ADD CONSTRAINT[PK_DefaultSettings] PRIMARY KEY ([Id])";
dbContext.Database.ExecuteSqlCommand(sql);
sql = @"SET IDENTITY_INSERT [DefaultSettings] ON;
INSERT INTO [DefaultSettings] ([Id], [Tag], [ValueInt], [ValueDate],[ValueChar]) VALUES (1, N'DefaultArea', 58, NULL, NULL);
INSERT INTO [DefaultSettings] ([Id], [Tag], [ValueInt], [ValueDate],[ValueChar]) VALUES (2, N'DefaultFarm', 52, NULL, NULL);
GO";
dbContext.Database.ExecuteSqlCommand(sql);
return;
第二次ExecuteSqlCommand
我收到错误
错误语句插入
我正在尝试通过GO将sql变量中的所有命令分开 - 我知道SQL Server CE不能分成多个SqlCommand
。
但是我得到了像"错误语句GO"这样的错误。
有什么想法吗?
SQL Server Compact 只允许每个命令有一个语句,因此您必须对 ExecuteSqlCommand 使用多个调用,每个 INSERT 语句一个。