我想从命令行对 SQL Server 2005 数据库运行一系列 SQL 语句。
当我发布第一个声明时
osql -E -S <Server_Name>\<Instance_Name> -d <Server_Name>
在我无法继续通过脚本进行操作后,它将从那里提示窗口 1>
。
如何向1>
提示提供输入我的意思是给出下一个SQL语句
BACKUP DATABASE TO DISK = 'c:\test.bak' WITH INIT,SKIP
最后退出
到该提示
我尝试使用 && 但我猜这仅适用于命令行命令。
最佳答案
您正在寻找 sqlcmd 工具上的 -Q 开关(不要在 sqlserver 2005 或更高版本上使用 osql)(键入 sqlcmd/? 查看所有选项)或查找 msdn
sqlcmd -E -S <Server_Name>\<Instance_Name> -d <Server_Name> -Q "BACKUP DATABASE TO DISK = 'c:\test.bak' WITH INIT,SKIP"
或者,您可以创建一个 sqlscript 文件,将所有要执行的 sql 语句放入其中。假设您将文件命名为 myscript.sql,osql 命令将如下所示:
sqlcmd -E -S <Server_Name>\<Instance_Name> -d <Server_Name> -i myscript.sql
关于sql - 在命令行上执行一系列SQL命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13430261/