web-dev-qa-db-fra.com

Obtenir un fichier SQL pour une migration spécifique dans Entity Framework 6 C #

Dans Entity Framework 6, je dois obtenir le script SQL pour un fichier de migration spécifique et mettre déjà à jour la base de données. J'ai trouvé que dans la commande update-database je peux ajouter un paramètre de script pour l'exporter en SQL mais j'ai déjà mis à jour la base de données. J'ai trouvé dans Entity Framework Core une commande appelée Script-Migration avec un nom de script en tant qu'argument. Existe-t-il une commande similaire dans le cadre Entity? 

j'ai aussi essayé ci-dessous, et j'ai obtenu un fichier SQL vide Commande de mise à jour de la base de données

7
Mohamed Abdeen

Oui, vous pourriez faire comme suit:

Update-Database -Script -SourceMigration: <pointFromWichYouWantToStartWithGeneration> -TargetMigration: <pointWhereToEndWithGeneration>

Pour créer un script pour toutes les migrations, exécutez les actions suivantes:

Update-Database -Script -SourceMigration: $InitialDatabase

Au lieu d'appliquer les modifications à la base de données, il génère un fichier de script SQL. Par conséquent, vous pouvez générer un script SQL même si la migration a déjà été appliquée à la base de données.

Vous trouverez ici plus d’informations à ce sujet - Premières migrations du code Entity Framework - Obtention d’un script SQL .

Exécutez la commande Update-Database mais, cette fois, spécifiez l'indicateur –Script pour que les modifications soient écrites dans un script plutôt que appliquées. Nous spécifierons également les migrations source et cible pour lesquelles générer le script.

10
ChW

Si vous souhaitez générer -Script pour la migration N, spécifiez -SourceMigration N-1 (migration précédente) et -TargetMigration N.

0
user9603263