一、sqlcmd
sqlcmd可用于导入.sql文件。如果数据量太大,使用GO命令分步执行。同样的数据量,据walker估计:sqlcmd效率比bcp至少差一个数量级。
1、基本命令。
1
|
sqlcmd -S SERVERNAME -U USERNAME -P PASSWORD -d DatabaseName -i filename.sql |
filename.sql里面是多行标准sql语句。
示例:
1
|
sqlcmd -S192.168.0.169 -U"sa" -P"saPwd" -d"DatabaseName" -i D:\tmp\t.sql |
官方文档中提到:当前(2015.8.27),sqlcmd 在命令行选项和值之间不需要空格。但是,在将来的版本中,在命令行选项和值之间可能需要空格。
官方文档:sqlcmd 实用工具
二、bcp
不能导入.sql文件。可导入txt文件,txt文件内容为多行裸数据,字段之间用TAB分隔,行分隔符需为\r\n。
示例如下:
1
2
|
bcp db_name.dbo.tbl_name in D:\tmp\bcp.txt -c -T //[-T 可信连接]
BCP [db_name].[dbo].[tbl_name] in D:\tmp\bcp.txt -c -S192.168.0.165 -U "sa" -P "sa_pwd"
|
相关阅读:
1、官方文档:bcp 实用工具
5、MySQL的类似命令:MySQL5 LOAD DATA 深入研究
三、osql
官方文档(osql 实用工具)里面提到:在 SQL Server 的未来版本中将删除此功能。请避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。请改用 sqlcmd。
*** walker ***
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1688927如需转载请自行联系原作者
RQSLT