2017-07-30 2 views
0

Habituellement, je peux trouver des réponses ici, mais l'erreur que je reçois n'est pas assez précise pour que je puisse me la représenter, au-delà du fait qu'il doit y avoir une faute de frappe . Honnêtement, je ne sais pas quelle est la faute de frappe. J'espère que quelqu'un peut aider. J'utilise .NET Core & EntityFramework (qui est encore nouveau pour moi). J'ai créé deux migrations: 'initial' & 'populate'. «peupler» est une migration vide que j'avais l'intention d'utiliser pour semer.SQL dans migrationBuilder Syntaxe incorrecte près du mot-clé

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 + "');"); 
} 

Pour une raison quelconque, lors de l'exécution dotnet mise à jour de base de données ef de la ligne de commande, il jette l'erreur ci-dessus: « syntaxe incorrecte près du mot-clé « groupe » », mais je ne vois vraiment pas Pourquoi.

http://i.imgur.com/it5rP5P.png

J'ai essayé omettre le point-virgule à la fin de l'instruction SQL, mais que les résultats dans la même erreur. Je ne sais vraiment pas ce qui pourrait être mal à l'instruction SQL :(

Toute aide serait grandement appréciée

SOLUTION:.

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 + "');"); 
} 

Répondre

2

support Put autour des identificateurs, GROUP est un mot réservé

+0

Devinez mon inexpérience avec les requêtes SQL: D Vous apprenez quelque chose de nouveau tous les jours Merci beaucoup. – nGAGE