sqlserver导入sql文件 sqlserver中通过osql/ocmd批处理批量执行sql文件的方法
也许你也同我一样在搜寻如何像mysql的source一样的命令来在sqlserver2008中执行.sql文件来导入数据或者建表。这是我从网上搜寻的一个方法。这可以解决当sql文件太大
导致无法用记事本打开而无法执行的苦脑,当然个人觉得这对于数据恢复不是很好的办法,因为数据量大的话不可能通过sql来进行恢复,这效率实在太低了。其他方法往后学会了再呈上,谢谢关注,如果你对各数据库的替换有好的数据传递方法,愿意分享的希望可以通知我地址。
正题:::::::::::::::::::::::::
利用osql/ocmd批处理批量执行sql文件
注意:在上图中我们可以看到osql 并不支持 SQL Server 2008的所有功能,如果需要使用SQL Server 2008的所有功能可以使用ocmd命令。
有了osql/ocmd命令要批量执行sql文件当然需要写一个批处理命令,例如我们执行上面sql文件就可以在txt中编写下面的语句:
复制代码 代码如下:
osql -S"127.0.0.1" -U"sa" -P"sa" -d"Northwind" -i"%CD%/1.sql"
osql -S"127.0.0.1" -U"sa" -P"sa" -d"Northwind" -i"%CD%/2.sql"
未测试
sqlcmd -S"127.0.0.1" -U"sa" -P"sa" -i"%CD%/1.sql"
sqlcmd -S"127.0.0.1" -U"sa" -P"sa" -i"%CD%/2.sql"
sqlcmd -S"127.0.0.1" -U"sa" -P"sa" -i"%CD%/2.sql"
经过测试可行。
然后保存成sql.bat同上面的1.sql和2.sql放到同一个文件下,在执行时双击sql.bat就可以了。