如何转换SQL Server 2008数据库到SQL Server 2005

如题所述

Step 1: 单击某个需要转换的数据库,然后选择任务(Tasks)——生成脚本(Generate Scripts)

Step 2: 弹出生成脚本指导界面

Step 3:选择需要导出的数据库对象,有导出整个数据库对象和选择指定数据库对象两个选项

Step 4: 设置生成脚本选项,例如指定脚本位置,脚本文件的编码等等选择,最重要的是高级选项”Advanced“

如下所示,最好在”Script for Server Version“ 里面选择”SQL Server 2005“等选项

测试服务器这个版本里面没有'Script Data”(生成数据的脚本)选项,如下所示,如果你要通过脚本插入数据,那么就必须选择这个选项。

Step 5: Summray your selections, 点击Next继续

Step 6: 执行过程。完成后即生成了相应脚本文件。

将生成的脚本在另外一台测试服务器执行,创建相应的数据库以及数据库对象。然后点击”SQL Server Import and Export“工具进行数据导入,操作步骤如下所示:
SQL Server Import and Export

Step 1: 欢迎界面,点击Next跳过。

Step 2: 选择数据源(Data Source),我们需要选择“SQL Server Native Client 10”, 输入身份认证信息,我选择Windows 身份认证。选择
需要导出数据的数据库,例如,我选择一个测试数据库TSL

Step 3:配置需要导入的Destination,选择对应的服务器和数据库

Step 4:两个选择,选项1是用于整个表或视图导入导出,选项2用于书写查询SQL或导入导出

Step 5: 勾选你需要导数的脚本,单击Source旁边的选项,即可选择全部对象。有时候需要编辑“Edit Mappings"选项,勾选”Enable identity Insert“,否则会导致后面导入导出报错

Step 6: 勾选立即执行,点击Next执行下一步

Step 7 : 执行过程,需要检查是否执行成功,查看相关出错信息。

执行完成后,然后在测试服务器将该数据库备份压缩后,通过FTP上传到各个工厂,进行还原。关于 Red Gate SQL Compare的操作,也非常方便简单,由于测试过程中没有截图,就此略过。
由于测试用的数据库比较小,不知道比较大的数据库,例如几百G的数据,操作起来是否会遇到性能等杂七杂八的问题。不过相信很多人是不会遇到这么奇葩的案例的。例如使用导入导出工具,其实就会遇到一些小问题(以前遇到的):
1:在验证时出现错误,错误信息如下所示:

- Validating (Error)
Messages
* Error 0xc02020f4: Data Flow Task 1: The column "xxxx" cannot be processed because more than one code page (936 and 1252) are specified for it.
(SQL Server Import and Export Wizard)
* Error 0xc02020f4: Data Flow Task 1: The column "xxxx" cannot be processed because more than one code page (936 and 1252) are specified for it.
(SQL Server Import and Export Wizard)
解决:检查你源数据库和目标数据库的排序规则是否不一致,如果不一致,就会出现大量上面错误。
2:在验证时出现下面错误信息
- Validating (Error)
Messages
* Error 0xc0202049: Data Flow Task 1: Failure inserting into the read-only column "xxxxx".
(SQL Server Import and Export Wizard)
* Error 0xc0202045: Data Flow Task 1: Column metadata validation failed.
(SQL Server Import and Export Wizard)
解决:出现这个错误,是因为这一列是自动增长,需要在”Edite Mappings" 选项里面勾选“Enable Identity Insert”选项,如果数据库里面有大量这类列,是个头疼的问题。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-08-02
完全可以转。
方法一:右击数据点,点属性,在“选项”中选择数据库兼容级别为SQL2005,备份或分离后即可还或附加在SQL2005上。
方法二:选择任务》生成脚本,在生成脚本选项中选择“编写数据的脚本”改为True,在“为数据库服务器版本生成脚本”一项中,改为SQL 2005,生成的脚本直接在SQL2005中执行,即可。不过如果数据量较多,可能生成的脚本较大,可分步执行。
第2个回答  2016-07-15
把设计的字段类型改成适用SQL serve2005的,然后生成sql脚本,在SQL serve2005里面运行这个脚本就哦了
相似回答