2005不論是性能還是安全性都是SQL SERVER2000有所增強(qiáng),現(xiàn)有不少企業(yè)在使用2005,或是有的用戶是2000與2005同時(shí)使用,那么這中間就涉及到雙數(shù)據(jù)的轉(zhuǎn)換問題:
今天我們就來看一下相關(guān)的實(shí)現(xiàn)方法:
本人的實(shí)現(xiàn)環(huán)境介紹:
方法一: 使用分離與附加 該方法適合于將SQL Server 2000中的數(shù)據(jù)轉(zhuǎn)換到SQL Server2005 ,但反之不行。
例如:現(xiàn)在將SQL SERVER2000中的DUFEI數(shù)據(jù)庫通過分離與附加的方法導(dǎo)入到SQL SERVER 2005中:
步驟1: 在 2000機(jī)器上運(yùn)行:
USE master;GO
EXEC sp_detach_db @dbname = N'dufei';GO
步驟2:將分離再來的MDF及LDF文件復(fù)制到 2005機(jī)器上:
步驟3:在2005機(jī)器上執(zhí)行以下命令:將復(fù)制的文件附加到數(shù)據(jù)庫中即可:
USE master;Go
EXEC sp_attach_db @dbname = N'dufei',
@filename1 = N'c:\dufei_data.mdf',
@filename2 = N'c:\dufei_log.ldf'; GO
此時(shí):導(dǎo)入成功!
方法二:利用備份與還原:
實(shí)例:現(xiàn)將2000中的DB1數(shù)據(jù)庫備份后,利用還原的方法導(dǎo)入到2005中:
步驟1:在SQL2000中執(zhí)行:
backup database DB1 to disk='c:\DB1.BAK'
步驟2:將備份文件復(fù)制到 SQL 2005的機(jī)器上:將生成的DB1.BAK復(fù)制到對(duì)方機(jī)器上:
步驟3: 在SQL 2005的機(jī)器上執(zhí)行:
restore database db1 from disk='c:\db1.bak'
因?yàn)槁窂絾栴},所以默認(rèn)情況下不會(huì)成功:也就是說如果使用RESTORE的默認(rèn)語法,是不行的:
因此,我們要對(duì)路徑進(jìn)行修改:
RESTORE DATABASE db1 FROM DISK = 'C:\db1.bak' WITH FILE = 1, MOVE N'db1_Data' TO N'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\db1.MDF', MOVE N'db1_Log' TO N'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\db1_1.LDF'
則還原成功!
但如果是將2005中的數(shù)據(jù)使用此方法導(dǎo)到2000則會(huì)報(bào)錯(cuò):
為備份或還原操作指定的設(shè)備太多;只允許指定 64 個(gè)設(shè)備。
服務(wù)器: 消息 3013,級(jí)別 16,狀態(tài) 1,行 1
RESTORE DATABASE 操作異常終止。
所以兩種方法都不能實(shí)現(xiàn)將SQL SERVER 2005的數(shù)據(jù)導(dǎo)到 SQL SERVER 2000中,除非使用下面的兩種方法:
方法三:導(dǎo)入導(dǎo)出:
實(shí)例:將 2005中的數(shù)據(jù)庫DUFEI導(dǎo)出到SQL 2000中
步驟1:
成功!
反之從 SQL2000導(dǎo)到SQL 2005也是一樣的:例如將PUBS導(dǎo)到2005中
方法四:使用腳本: 但我個(gè)人不推薦使用此方法,因?yàn)樵诖诉^程中依然要使用數(shù)據(jù)的導(dǎo)入/導(dǎo)出來轉(zhuǎn)換數(shù)據(jù),也就是說使用腳本不能讓記錄也一起導(dǎo)入到對(duì)方的數(shù)據(jù)庫中,仍然要借助其他方法!如果數(shù)據(jù)庫中對(duì)象較多,如觸發(fā)器,存儲(chǔ)過程等,可以考慮使用腳本和數(shù)據(jù)的導(dǎo)入\導(dǎo)出相結(jié)合.
這只是我個(gè)人的感覺,不知道對(duì)否,還望大家多批評(píng)指正!
本文出自 “杜飛” 博客
您可能感興趣的文章:- SQL Server 2005降級(jí)到2000的正確操作步驟分享
- SQLServer 2008數(shù)據(jù)庫降級(jí)到2005低版本
- SqlServer高版本數(shù)據(jù)備份還原到低版本
- 企業(yè)管理器備份和還原SQL Server數(shù)據(jù)庫
- SQL Server 2005數(shù)據(jù)庫還原錯(cuò)誤的經(jīng)典解決方案
- SQL Server 數(shù)據(jù)庫備份和還原認(rèn)識(shí)和總結(jié) (一)
- 通過SQL語句來備份,還原數(shù)據(jù)庫
- SQL Server 2005 還原數(shù)據(jù)庫錯(cuò)誤解決方法
- 解決SQL2005備份數(shù)據(jù)庫.dat或bak還原時(shí)的結(jié)構(gòu)錯(cuò)誤的解決方法
- MS sqlserver 2008數(shù)據(jù)庫轉(zhuǎn)換成2000版本的方法