- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL Server 2005与2000之间的数据转换
SQL Server 2005与2000之间的数据转换
-
2005不论是性能还是安全性都是SQL SERVER2000有所增强,现有不少企业在使用2005,或是有的用户是2000与2005同时使用,那么这中间就涉及到双数据的转换问题:
今天我们就来看一下相关的实现方法:
本人的实现环境介绍:
方法一: 使用分离与附加 该方法适合于将SQL Server 2000中的数据转换到SQL Server2005 ,但反之不行。
例如:现在将SQL SERVER2000中的DUFEI数据库通过分离与附加的方法导入到SQL SERVER 2005中:
步骤1: 在 2000机器上运行:
USE master;GO
EXEC sp_detach_db @dbname = Ndufei;GO
步骤2:将分离再来的MDF及LDF文件复制到 2005机器上:
步骤3:在2005机器上执行以下命令:将复制的文件附加到数据库中即可:
USE master;Go
EXEC sp_attach_db @dbname = Ndufei,
@filename1 = Nc:dufei_data.mdf,
@filename2 = Nc:dufei_log.ldf; GO
此时:导入成功!
方法二:利用备份与还原:
实例:现将2000中的DB1数据库备份后,利用还原的方法导入到2005中:
步骤1:在SQL2000中执行:
backup database DB1to disk=c:DB1.BAK
步骤2:将备份文件复制到 SQL 2005的机器上:将生成的DB1.BAK复制到对方机器上:
步骤3: 在SQL 2005的机器上执行:
restore database db1 from disk=c:db1.bak
因为路径问题,所以默认情况下不会成功:也就是说如果使用RESTORE的默认语法,是不行的:
因此,我们要对路径进行修改:
RESTORE DATABASE db1 FROM DISK = C:db1.bak WITH FILE = 1, MOVE Ndb1_Data TO Nc:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLdb1.MDF, MOVE Ndb1_Log TO Nc:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLdb1_1.LDF
则还原成功!
但如果是将2005中的数据使用此方法导到2000则会报错:
为备份或还原操作指定的设备太多;只允许指定 64 个设备。
服务器: 消息 3013,级别 16,状态 1,行 1
RESTORE DATABASE 操作异常终止。
所以两种方法都不能实现将SQL SERVER 2005的数据导到 SQL SERVER 2000中,除非使用下面的两种方法:
方法三:导入导出:
实例:将 2005中的数据库DUFEI导出到SQL 2000中
步骤1:
成功!
反之从 SQL2000导到SQL 2005也是一样的:例如将PUBS导到2005中
方法四:使用脚本: 但我个人不推荐使用此方法,因为在此过程中依然要使用数据的导入/导出来转换数据,也就是说使用脚本不能让记录也一起导入到对方的数据库中,仍然要借助其他方法!如果数据库中对象较多,如触发器,存储过程等,可以考虑使用脚本和数据的导入导出相结合.
这只是我个人的感觉,不知道对否,还望大家多批评指正!
本文出自 “杜飞” 博客,请务必保留此出处/382644/84931
文档评论(0)