walker的需求其实很简单,就是将包含多个insert语句的sql文件导入SQLServer。开始以为应该用bcp,因为模模糊糊不时听到:“SQLServer大量数据复制就用bcp”。然而,walker发现貌似bcp不支持标准sql文件导入。walker最终的选择是sqlcmd。现在将查阅到的内容列在下面。
一、sqlcmd
1、基本命令。
sqlcmd -S SERVERNAME -U USERNAME -P PASSWORD -d DatabaseName -i filename.sql
filename.sql里面是多行标准sql语句。
示例:
sqlcmd -S192.168.0.169 -U"sa" -P"saPwd" -d"DatabaseName" -i D:\tmp\t.sql
官方文档中提到:当前(2015.8.27),sqlcmd 在命令行选项和值之间不需要空格。但是,在将来的版本中,在命令行选项和值之间可能需要空格。
官方文档:sqlcmd 实用工具
二、bcp
不支持标准sql文件导入?
相关阅读:
1、官方文档:bcp 实用工具
三、osql
官方文档(osql 实用工具)里面提到:在 SQL Server 的未来版本中将删除此功能。请避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。请改用 sqlcmd。
*** walker ***
本文出自 “walker的流水账” 博客,请务必保留此出处http://walkerqt.blog.51cto.com/1310630/1688927
原文地址:http://walkerqt.blog.51cto.com/1310630/1688927