Dans SQL Server Management Studio qu'est-ce que le mode SQLCMD?
Dans SQL Server Management Studio, je voudrais savoir quel est le mode SQLCMD?
- Voir Le SQLCMD workbench pour des exemples où c'est utile.
- Et dba.se: dba.stackexchange.com/search?q=sqlcmd
Vous devez vous connecter pour publier un commentaire.
Exactement ce que cela ressemble.
C'est un mode qui vous permet de créer des scripts SQLCMD.
À partir de MSDN - Modification de Scripts SQLCMD avec l'Éditeur de Requête:
Dans SQL Server Management Studio, défini via le menu Requête (Query -> Mode SQLCMD).
J'ai fait un peu plus de recherche, donc voici ma compréhension de cette de prolonger ce qui a été écrit jusqu'à présent:
Qu'est-ce que SQLCMD
SQLCMD.exe est un utilitaire de console inclus dans l'installation de SQL Server 2005 et plus. Vous pouvez généralement trouver dans un chemin comme
c:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE
.C'est un simple environnement de script qui permet d'automatiser des tâches liées à SQL server. Par exemple, vous pouvez écrire et exécuter un script de connexion à une instance de SQL Server, l'exécution de scripts à partir d'un répertoire donné sur cette connexion et stocker le résultat dans un fichier spécifié.
Invoke-Sqlcmd
applet de commande a été introduit avec SQL Server 2008 comme un moyen de remplacer cet outil standardisés, Powershell approche fondée sur la préservation de la plupart de la syntaxe d'origine et de fonctionnalité.Qu'est-ce que le mode SQLCMD dans SSMS
Dans SSMS, mode SQLCMD est l'exécution d'un script qui simule la mode sqlcmd.exe de l'environnement et, par conséquent, accepte des commandes qui ne font pas partie du langage T-SQL.
Contrairement à
sqlcmd.exe
, il entre en contact avec la base de données à l'aide de SqlClient (de la même manière que SSMS), pas ODBC fournisseur de données, de sorte que, par certains aspects, il peut avoir des comportements différents quesqlcmd.exe
.De l'exécution de scripts en mode SQLCMD permet d'utiliser les commandes typiques de
sqlcmd.exe
de l'environnement. Cependant, il n'y a pas IntelliSense ou à la prise en charge du débogage pour le mode SQLCMD, afin de maintenir des scripts qui mélange propre de T-SQL avec SQLCMD-code spécifique peut être une douleur. Par conséquent, il doit être utilisé uniquement lorsque c'est nécessaire.Exemple de cas d'utilisation
Supposons qu'une entreprise a une convention de nommage pour les bases de données qui incluent l'environnement dans le nom, par exemple: MyDb_Prod, MyDb_Test, MyDb_Dev. La présente convention peut être utilisé pour minimiser les risques d'erreurs.
Quand un développeur écrit un script T-SQL, il devra être exécuté dans les différents environnements de déploiement/processus de test, ce qui nécessiterait de nombreuses versions du code:
Au lieu de cela, nous pouvons supposer que le nom de base de données sera fourni comme une variable SQLCMD dans les processus de déploiement et ont exactement le même fichier déployé à tous les environnements:
(dans cet exemple simple nom de base de données peut être omis, mais si vous avez de la croix-base de données se joint, à l'aide de nom de base de données est nécessaire)
"Vous utilisez des scripts SQLCMD lorsque vous avez à traiter de Windows Système de commandes et d'instructions Transact-SQL dans le même script."
"Par défaut, l'utilitaire SQLCMD mode n'est pas activé dans l'Éditeur de Requête. Vous pouvez activer le script en mode en cliquant sur le Mode SQLCMD icône dans la barre d'outils ou en sélectionnant le Mode SQLCMD dans le menu Requête."
Référence: MSDN