Partager via


Comment : préparer une base de données pour un déploiement à partir d'une invite de commandes à l'aide de VSDBCMD.EXE

Vous pouvez déployer un projet de base de données à partir d'une invite de commandes sur un ordinateur exécutant SQL Server. Toutefois, vous devez d'abord copier la sortie de la génération de votre projet de base de données, l'utilitaire VSDBCMD, et les fichiers suivants sur l'ordinateur à partir duquel vous souhaitez déployer le projet :

  • DatabaseSchemaProviders.Extensions.xml

  • Microsoft.Data.Schema.dll

  • Microsoft.Data.Schema.ScriptDom.dll

  • Microsoft.Data.Schema.ScriptDom.Sql.dll

  • Microsoft.Data.Schema.Sql.dll

  • Microsoft.Data.Schema.Utilities.dll

  • Microsoft.SqlServer.BatchParser.dll

  • Sqlceer35en.dll

  • Sqlceme35.dll

  • Sqlceqp35.dll

  • Sqlcese35.dll

  • System.Data.SqlServerCe.dll

  • VSDBCMD.EXE

Important

Pour utiliser VSDBCMD.EXE sur un ordinateur sur lequel vous n'avez pas installé Visual Studio, vous devez installer la version de Microsoft.SqlServer.BatchParser.dll qui correspond à votre version de SQL Server. Pour SQL Server 2008, ce fichier est installé lors de l'installation de l'un des logiciels suivants :

Vous pouvez copier ces fichiers sur une connexion réseau ou sur un lecteur USB (Universal Serial Bus), puis le connecter à l'ordinateur à partir duquel vous souhaitez déployer le projet. Pour plus d'informations sur le contexte dans lequel vous pouvez suivre cette procédure, consultez Générer et déployer des bases de données dans un environnement de pré-production ou de production.

Vous pouvez fournir des arguments de ligne de commande supplémentaires pour personnaliser le déploiement. Pour plus d'informations, consultez Référence de ligne de commande pour VSDBCMD.EXE (déploiement et importation de schéma).

Important

Vous ne pouvez pas utiliser VSDBCMD pour déployer un projet DAC (composant d'application de couche Données). Pour plus d'informations sur le déploiement de composants d'application de couche Données, consultez Déploiement des packages d'application de couche Données sur le site Web Microsoft.

Spécifications particulières pour les systèmes d'exploitation 64 bits

Si vous souhaitez effectuer un déploiement à l'aide de VSDBCMD.EXE sur un ordinateur doté d'un système d'exploitation 64 bits, vous devez installer à la fois les versions 32 bits et 64 bits des assemblys SQL CE répertoriées précédemment dans cette rubrique. Pour installer les fichiers nécessaires, consultez la page suivante sur le site Web de Microsoft : Détails du téléchargement : Microsoft SQL Server Compact 3.5 Service Pack 2 pour Windows.

Notes

Vous n'êtes pas obligé d'effectuer le déploiement à partir de votre serveur de production. Vous pouvez utiliser n'importe quel ordinateur à partir duquel vous pouvez vous connecter au serveur et à la base de données cibles, par exemple un ordinateur intermédiaire.

BadImageFormatException

Si une exception BadImageFormatException se produit lors de l'exécution de VSDBCMD.EXE, vous pouvez résoudre le problème en installant Microsoft .NET Framework 4. Pour plus d'informations, consultez la page suivante sur le site Web Microsoft : Détails du téléchargement : Microsoft .NET Framework 4 (programme d'installation autonome).

Pour copier les fichiers requis

  1. Accédez au dossier Program Files\Microsoft Visual Studio 10.0\VSTSDB\Deploy, puis copiez le contenu de ce dossier et de ses sous-dossiers.

    Notes

    Le sous-dossier Extensions contient DatabaseSchemaProviders.Extensions.xml, sans lequel le déploiement échouera.

  2. Accédez au dossier Program Files\Microsoft SQL Server Compact Edition\v3.5, puis copiez les DLL.

  3. Accédez à l'un des dossiers suivants, en remplaçant LecteurProjet, DossierProjets, NomSolution et NomProjet par les valeurs appropriées pour votre environnement de développement :

    • LecteurProjet:\DossierProjets\NomSolution\NomProjet\sql\debug

    • LecteurProjet:\DossierProjets\NomSolution\NomProjet\sql\release

  4. Copiez le contenu du dossier.

    Notes

    Vous devez copier la sortie de la génération vers un sous-dossier afin de conserver les fichiers d'un déploiement de base de données particulier à l'écart de ceux de tous les déploiements.

    Ensuite, vous générez un script de déploiement pour le projet.

Pour générer un script de déploiement à partir d'une invite de commandes

  • Ouvrez la fenêtre d'invite de commandes et tapez la ligne de commande suivante.

    VSDBCMD /dd:- /a:Deploy /manifest:manifestFileName.dbmanifest
    

    L'option /dd:- garantie qu'un script est généré, mais qu'aucun déploiement ne se produit. Le manifeste de déploiement fournit les autres paramètres que vous spécifieriez autrement sur la ligne de commande.

Pour déployer un projet de base de données à partir d'une invite de commandes

  • Ouvrez la fenêtre d'invite de commandes et tapez la ligne de commande suivante.

    VSDBCMD /a:Deploy /dd:+ /manifest:manifestFileName.dbmanifest
    

    Le manifeste de déploiement fournit les autres paramètres, tels que le nom de la base de données cible, la chaîne de connexion, et ainsi de suite, que vous spécifieriez autrement sur la ligne de commande.

Voir aussi

Référence

Référence de ligne de commande pour VSDBCMD.EXE (déploiement et importation de schéma)

Concepts

Générer et déployer des bases de données dans un environnement de pré-production ou de production

Vue d'ensemble des paramètres de projet de base de données

Historique des modifications

Date

Historique

Motif

Juillet 2010

Éclaircissement du fait que vous devez copier non seulement le contenu du dossier Deploy mais également de ses sous-dossiers.

Commentaires client.

Octobre 2010

Notes ajoutées concernant des exigences particulières sur les plateformes 64 bits, en réponse à des commentaires client.

Commentaires client.

Décembre 2010

Ajout des emplacements d'installation pour les packages qui contiennent l'assembly Microsoft.SQLServer.BatchParser.

Commentaires client.

Avril 2011

Ajout d'un assembly manquant dans la liste des DLL requises

Commentaires client.