经常有SQL需要导入新库中,SQL比较大一般大于1G,用Navicat客户端导入还是比较慢的。可以借助SqlServer实用工具 SqlMD 进行导入, 一个命令行工具。
tip: 一般大于1G文件 用文本编辑器比较难打开, 一般只是瞄一眼里面内容,可以使用浏览器打开,这样比较快的打开文件,浏览器可以按需滚动读取大文件。
下载介绍
https://docs.microsoft.com/zh-cn/sql/tools/sqlcmd-utility?view=sql-server-ver15
注意: 此组件要求Windows Installer 4.5和Microsoft ODBC 驱动程序17.3.1。1用于 SQL Server。
该网页也提供ODBC驱动下载。
一般的命令行如下:
sqlcmd -S 119.3.51.156,1401 -U sa -P Root123456 -i C:\Users\guzt\Downloads\dbo\dbo.sql -o D:\1.txt
-S 数据库IP地址 1401是端口,如果是默认1433则可以不用加,IP地址和端口用英文逗号分隔
-U 用户名
-P 密码
-i 要导入的sql文件
SQL文件中第一个命令应该指定导入到哪个数据库中,如下:
use 你要导入的数据库名称
go
-o 导入操作日志输入到具体文件下,不存在自动创建的,不指定则输出到控制台。
为了防止乱码问题,请确认sql文件中 insert语句 插入值时是否 含有'N' 字符,例如下面sql
insert into promary values(1,N'北京市')
insert into promary values(2,N'天津市')
insert into promary values(3,N'上海市')
insert into promary values(4,N'重庆市')
insert into promary values(5,N'河北省')