在往sqlserver数据库运行sql文件导入数据时,对于小的sql文件,直接在SQL Server Management Studio里打开执行就行了,但有几个表的数据量非常大,运行sql文件时提示内存不足。
使用自带sqlcmd命令工具进行执行导入。
1、如我使用的是sqlserver2008,是安装在d盘的,打开命令行,进入Binn目录:
cd D:\Program Files\Microsoft SQL Server\100\Tools\Binn
2、输入以下命令
sqlcmd -S localhost -U sa -P sasa -d chrysler -i e:\sql\user_folder.sql
-S
:数据库服务器地址,我这里是本机直接用localhost-U
:用户名-P
:密码-d
:数据库名-i
:sql文件
执行.sql脚本文件,如果文件较大时,执行会出现内存溢出问题,可用命令替代 CMD中输入 osql -S localhost -U sa -P a -i D:\1.sql ,-S 服务器名 -U 用户名 -P 密码 -i 文件地址,等待执行完毕即可。
以上在sql2008R2下执行通过
如果数据库是 sql2008、sql2012的 请将 osql 修改成为 sqlcmd 即可,如下
1、用cmd命令执行
用命令替代 CMD中输入:sqlcmd -S localhost -U sa -P a -i E:\d
2.需要在装有SQL server 的电脑上运行
3.使用系统管理员来登录电脑,系统使用windows集成身份验证
4.选中目录,点自动搜素,可以搜索目录和子目录下所有mdf文件
5.对不附加的,直接在搜索结果中删除
1. 将数据库生成
使用对象资源管理器能快速创建整个数据的脚本,也能使用默认选项创建单个数据库对象的脚本;
用户能在查询编辑器窗口中对文件或剪贴板创建脚本,脚本以 Unicode 格式创建;
用户也能创建用于创建或删除对象的脚本,有些对象类型具有其他脚本选项,如 ALTER、SELECT、INSERT、UPDATE、DELETE、EXECUTE 操作;
用命令替代 CMD中输入:sqlcmd -S localhost -U sa -P a -i D:\1.sql。对应注释:,-S 服务器名 -U 用户名 -P 密码 -i 文件地址。1、用cmd命令执行。
设置数据库为简单模式,自动收缩
1打开查询分析器输入命令 backup log databasename with no_log
2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
.................................
cmd命令行,管理员身份运行
执行以下语句:E:\dbbak\abhs\SmartEnglish_data.sql为文件路径,AbhsEnglish 为要导入的数据库
sqlcmd -iE:\dbbak\abhs\SmartEnglish_data.sql -dAbhsEnglish
导入成功后查询:
select a.name as 表名,max(b.ro...