web-dev-qa-db-fra.com

Exécuter le script SQL en ligne de commande

J'ai besoin de modifier une base de données à l'aide d'un fichier de commandes. Par exemple, supprimez une table. J'utilise SQL Express local (SQL Server 2008 R2) avec l'utilisateur sa et son mot de passe.

Comment serait le fichier chauve-souris? 

Comment puis-je spécifier dans le script le mot de passe et celui que j'utilise dans SQL Express? 

45
blur

Jetez un coup d'œil à l'utilitaire sqlcmd. Il vous permet d'exécuter SQL à partir de la ligne de commande.

http://msdn.Microsoft.com/en-us/library/ms162773.aspx

Tout est là dans la documentation, mais la syntaxe devrait ressembler à ceci:

sqlcmd -U myLogin -P myPassword -S MyServerName -d MyDatabaseName 
    -Q "DROP TABLE MyTable"
51
rsbarro

Tu peux faire comme ça

sqlcmd -S <server Name> -U sa -P sapassword -i inputquery_file_name -o outputfile_name

Depuis votre commande Invite, exécutez sqlcmd /? pour obtenir toutes les options que vous pouvez utiliser avec l'utilitaire sqlcmd.

39
Rahul

Si vous utilisez Integrated Security , vous voudrez peut-être savoir que vous devez simplement utiliser -E comme ceci:

sqlcmd -S Serverinstance -E -i import_file.sql
20
Maxime

Commentaires Guys, créez d’abord un exemple de base de données live; avant d'exécuter le fichier SQL ci-dessous.

sqlcmd -U SA -P yourPassword -S YourHost -d live -i live.sql