SQL SERVER数据库备份为Script文件

SQL Server数据库之前用的不多,一直觉得它用着不方便,不如Mysql直观明了,微软那些大公司的东西,总是出现很多莫名其妙的错误。

经常用SQL Server的人都知道,它有三种备份/恢复方式。

一、分离、附加

这种方式最直观,就是将现有的数据库文件保存出来,或附加上去。

与Mysql直接拷贝数据库文件一样,但正在运行的数据库需要分离后再拷贝,以减少错误

二、备份、还原

这种方式是将指定的数据库备份到一个文件实体里面,可以多次备份,恢复的时候也可以从实体里选择要恢复的版本。

以上两种方式备份和恢复的数据库版本要一样,还原的版本可以高。

三、生成脚本、运行脚本

这种方式是我在Mysql中常用的,因为它备份出来的文件内容可以看懂,也可以修改。

但是之前一直纠结于SQL Server生成的脚本只有架构,就是只有数据表或存储过程等的创建语句,而没有插入数据的语句,难道这种方式只能备份结构吗?

为此我也在网上搜罗了很多资料,其实都是在误导人。后来还找了个存储过程,可以生成插入语句,以供备份还原使用。

终于前两天才在网上看到一篇文章,才愰然,原来在生成脚本第三步有一个高级按钮,这些功能都是在里面设置的。

那篇文章地址我不记得了,等下找到再帖出来。

我用的是SQL Server ManageStudio 10.50.2500.0,其它版本都差不多,2005版也有这些功能,可能某些设置的位置不太一样。

第一步简介

 

第二步选择对象(我一般只选择表,这个要看数据库内容了,如果没有用到存储过程之类的,就不要选那么多了)

第三步是关键,看到高级两个字了没?

点开高级设置

两个设置是关键点

第一个设置兼容版本,如果没有用到高版本的一些特性,就选兼容版本低一点,这样生成的脚本在低版本上也能运行,否则容易出错

第二个选择生成内容,默认只有架构,这就是为什么没设置的时候生成出来的只有结构没有数据,当然也可以只导出数据,看你需要了

好了,下面是要保存到文件还是保存到查询窗口,就随便了。

如果这篇文章有帮到你,点下分享让更多人看到吧