sqsh SQL Server 2005 执行 *.sql 文件

Posted

技术标签:

【中文标题】sqsh SQL Server 2005 执行 *.sql 文件【英文标题】:sqsh SQL Server 2005 execute *.sql file 【发布时间】:2012-01-04 00:06:42 【问题描述】:

我想通过 sqsh 删除远程 SQL Server 数据库,但是我不知道它是如何工作的。我可以使用命令连接到 sql server:

sqsh -Ulogin -Ppass -Smssql2005

【问题讨论】:

【参考方案1】:

连接到服务器后,您可以使用命令删除数据库

drop database [DBName]

假设没有人连接到它,它应该可以工作。如果没有,它会告诉你原因。

【讨论】:

问题的主要目标如何通过sqsh执行sql脚本,但请注意【参考方案2】:
echo 'USE table' > script.sqsh
echo 'go' >> script.sqsh
echo 'SELECT * FROM table' >> script.sqsh
echo 'go' >> script.sqsh
sqsh -Ulogin -Ppass -Smssql2005 -i script.sqsh

【讨论】:

【参考方案3】:

也许您使用了错误的工具连接到 MS SQL Server。如果您希望连接到 MS SQL Server,那么您可以使用以下代码:

SQLCMD -S servername -U username -P password
OR
SQLCMD -S servername -E

【讨论】:

【参考方案4】:

-C 参数允许您指定要发送到 SQL Server 实例的查询。

所以,我认为这会满足你的要求:

sqsh -Ulogin -Ppass -Smssql2005 -C"DROP DATABASE MyDatabase"

【讨论】:

以上是关于sqsh SQL Server 2005 执行 *.sql 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SQL Server 2005/2008 中清除查询执行统计信息

SQL Server 2005 异常

SQL Server 2005 中的内置数据库角色允许执行存储过程?

急急急!应用程序在sql server2005里执行的sql语句怎样查看!

sql server 2005 跨数据库操作

更新 SQL Server 2005 中的表列