VS2012 script de Post-Déploiement se référant à plusieurs autres scripts
J'ai créé une base de données de projet dans VS2012
. J'ai ajouté de la structure de base de données. Il fonctionne très bien de publier et de comparer la base de données.
Maintenant sur publier je veux charger automatiquement plusieurs tables avec des données par défaut.
J'ai créé cinq fichiers de script avec INSERT
états générés à partir de SQL Management Studio. Ils ont été ajoutés au dossier Script dans mon projet de base de données.
Puis j'ai mis BuildAction=PostDeploy
. Cela fonctionne très bien. MAIS depuis quelques raison, il est possible d'avoir UN ensemble de script pour PostDeploy
....
Je me rends compte que je peux déplacer tous les scripts dans un fichier. Mais j'ai beaucoup et tiens vraiment à les regrouper dans des fichiers séparés pour maintenir un peu d'ordre.
Ensuite, j'ai créé un PostDeploy.sql
fichier et essayé de faire référence à tous les autres fichiers de script à partir de là. Le fichier d'en-tête, donne des instructions:
Post-Deployment Script Template
----------------------------------------------------------------------------
This file contains SQL statements that will be appended to the build script.
Use SQLCMD syntax to include a file in the post-deployment script.
Example: :r .\myfile.sql
Donc j'écris mon fichier:
:r .\MyScript1.sql
:r .\MyScript2.sql
:r .\MyScript3.sql
:r .\MyScript4.sql
:r .\MyScript5.sql
Le fichier se plaint de mal de syntaxe.
Vous devez vous connecter pour publier un commentaire.
Il s'est avéré que Visual Studio me tromper avec de fausses syntaxe des avertissements! Ma configuration est parfaitement valable.
Pour éviter les mises en garde clic droit n'importe où dans le fichier et choisissez "Paramètres d'Exécution - SQLCMD Mode".
Il y a également un bouton de barre d'outils nommée SQLCMD Mode de faire la même chose.
Ici est l'élément de menu dans le cas où vous ne pouvez pas trouver le bouton de barre d'outils: