C'est un utilitaire injustement méconnu qui permet de lancer des scripts et des fichiers SQL.
La syntaxe complète est décrite de manière exhaustive ici : http://msdn2.microsoft.com/en-us/library/ms232804(en-US,SQL.90).aspx
En plus des ordres Transact-SQL, les commandes suivantes sont disponibles :
GO [count]
:List
[:] RESET
:Error
[:] ED
:Out
[:] !!
:Perftrace
[:] QUIT
:Connect
[:] EXIT
:On Error
:r
:Help
:ServerList
:XML [ON | OFF]
Mais la fonctionnalité que je trouve la plus intéressante est la possibilité de changer de connection à l'intérieur d'un script à l'aide du mot-clé :
:connect
Cette possibilité peut être étendue à SQL Server Management Studio en activant la compatibilité de celui-ci avec les scripts sqlcmd :
Menu Outils, Options