SQL in migrationBuilder 关键字附近的语法不正确
SQL in migrationBuilder Incorrect syntax near the keyword
通常,我可以在这里找到答案,但我得到的错误不够具体,我无法自己弄清楚,除了一定有某种拼写错误之外。老实说,我不知道错字是什么。我希望有人能提供帮助。
我正在使用 .NET Core & EntityFramework(这对我来说还是新的)。我创建了几个迁移:'initial' & 'populate'。 'populate' 是我打算用于播种的空迁移。
protected override void Up(MigrationBuilder migrationBuilder)
{
foreach (var job in GetAllJobs().OrderBy(x => x.Id))
migrationBuilder.Sql("INSERT INTO Jobs (Id, Code, Name, Role, Type, Group) " +
"VALUES ('" + job.Id + "', '" + job.Code + "', '" + job.Name + "', '" + job.Role + "', '" + job.Type + "', '" + job.Group + "');");
}
出于某种原因,当从命令行 运行 dotnet ef 数据库更新 时,会抛出上述错误:"Incorrect syntax near the keyword 'Group'" ,但我真的不明白为什么。
http://i.imgur.com/it5rP5P.png
我曾尝试省略 SQL 语句末尾的分号,但这会导致同样的错误。我真的不知道 SQL 语句可能有什么问题:(
如有任何帮助,我们将不胜感激。
解决方案:
protected override void Up(MigrationBuilder migrationBuilder)
{
foreach (var job in GetAllJobs().OrderBy(x => x.Id))
migrationBuilder.Sql("INSERT INTO Jobs (Id, Code, Name, Role, Type, [Group]) " +
"VALUES ('" + job.Id + "', '" + job.Code + "', '" + job.Name + "', '" + job.Role + "', '" + job.Type + "', '" + job.Group + "');");
}
标识符用括号括起来,GROUP 是保留字
通常,我可以在这里找到答案,但我得到的错误不够具体,我无法自己弄清楚,除了一定有某种拼写错误之外。老实说,我不知道错字是什么。我希望有人能提供帮助。
我正在使用 .NET Core & EntityFramework(这对我来说还是新的)。我创建了几个迁移:'initial' & 'populate'。 'populate' 是我打算用于播种的空迁移。
protected override void Up(MigrationBuilder migrationBuilder)
{
foreach (var job in GetAllJobs().OrderBy(x => x.Id))
migrationBuilder.Sql("INSERT INTO Jobs (Id, Code, Name, Role, Type, Group) " +
"VALUES ('" + job.Id + "', '" + job.Code + "', '" + job.Name + "', '" + job.Role + "', '" + job.Type + "', '" + job.Group + "');");
}
出于某种原因,当从命令行 运行 dotnet ef 数据库更新 时,会抛出上述错误:"Incorrect syntax near the keyword 'Group'" ,但我真的不明白为什么。
http://i.imgur.com/it5rP5P.png
我曾尝试省略 SQL 语句末尾的分号,但这会导致同样的错误。我真的不知道 SQL 语句可能有什么问题:(
如有任何帮助,我们将不胜感激。
解决方案:
protected override void Up(MigrationBuilder migrationBuilder)
{
foreach (var job in GetAllJobs().OrderBy(x => x.Id))
migrationBuilder.Sql("INSERT INTO Jobs (Id, Code, Name, Role, Type, [Group]) " +
"VALUES ('" + job.Id + "', '" + job.Code + "', '" + job.Name + "', '" + job.Role + "', '" + job.Type + "', '" + job.Group + "');");
}
标识符用括号括起来,GROUP 是保留字