将批量的SQL文件导入SQL Server数据库
背景
有时需将批量的SQL文件(数百个SQL文件)导入新的SQL Server数据库中,一个一个执行会累坏人我们怎么批量导入
实施
1. 禁用数据库所有表主外键
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all"
2. 新建Batch.txt文件,编辑内容如下并将扩展名改为bat(Batch.bat)
@echo off
for /r sql文件夹路径 %%i in (*.sql) do (
sqlcmd -S 数据库服务器IP -U 数据登录帐号 -P 密码 -d 数据库名 -i %%~i
)
pause
3. 执行Batch.bat文件
4. 启用数据库所有主外键
EXEC sp_msforeachtable "ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all"
例:
sqlcmd -S IP地址 -U sa -P XXX -d DB实例名 -i XXX.sql