SQL Server 2005與sql 2000之間的數(shù)據(jù)轉(zhuǎn)換方法
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ù)制到對方機(jī)器上:
步驟3: 在SQL 2005的機(jī)器上執(zhí)行:
restore database db1 from disk='c:\db1.bak'
因?yàn)槁窂絾栴},所以默認(rèn)情況下不會成功:也就是說如果使用RESTORE的默認(rèn)語法,是不行的:
因此,我們要對路徑進(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則會報(bào)錯(cuò):
為備份或還原操作指定的設(shè)備太多;只允許指定 64 個(gè)設(shè)備。
服務(wù)器: 消息 3013,級別 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)入到對方的數(shù)據(jù)庫中,仍然要借助其他方法!如果數(shù)據(jù)庫中對象較多,如觸發(fā)器,存儲過程等,可以考慮使用腳本和數(shù)據(jù)的導(dǎo)入\導(dǎo)出相結(jié)合.
這只是我個(gè)人的感覺,不知道對否,還望大家多批評指正!
本文出自 “杜飛” 博客
- SQL Server 2005降級到2000的正確操作步驟分享
- SQLServer 2008數(shù)據(jù)庫降級到2005低版本
- SqlServer高版本數(shù)據(jù)備份還原到低版本
- 企業(yè)管理器備份和還原SQL Server數(shù)據(jù)庫
- SQL Server 2005數(shù)據(jù)庫還原錯(cuò)誤的經(jīng)典解決方案
- SQL Server 數(shù)據(jù)庫備份和還原認(rèn)識和總結(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版本的方法
相關(guān)文章
SQLServer2005 Output子句獲取剛插入的ID值
SQLServer2005的Output子句獲取剛插入的ID值2009-08-08sql server 2005用戶權(quán)限設(shè)置深入分析
關(guān)于什么是用戶權(quán)限,最簡單的定義可能是,用戶能做什么和不能做什么,本文將詳細(xì)介紹sql server 2005用戶權(quán)限設(shè)置,需要了解的朋友可以參考下2012-11-11SQL Server 2005 同步復(fù)制技術(shù)
SQL Server 2005 同步復(fù)制技術(shù)實(shí)現(xiàn)sql語句。2009-06-06收縮數(shù)據(jù)庫日志文件的方法(僅適用于mssql2005)
將數(shù)據(jù)庫日志文件變?yōu)?M大小代碼講解收縮mssql2005數(shù)據(jù)庫日志文件的方法,感興趣的你可不要錯(cuò)過了哈,希望本文可以幫助到你2013-02-02SQL2005 ROW_NUMER實(shí)現(xiàn)分頁的兩種常用方式
SQL2005利用ROW_NUMER實(shí)現(xiàn)分頁的兩種常用方式2009-07-07SQL Server Management Studio Express管理器 沒有導(dǎo)入導(dǎo)出數(shù)據(jù)的向?qū)У慕鉀Q方法
我的SQL2005 Microsoft SQL Server Management Studio Express管理器里,右鍵單擊一個(gè)數(shù)據(jù)庫,指向“任務(wù)”,再單擊“導(dǎo)入數(shù)據(jù)”或“導(dǎo)出數(shù)據(jù)”中沒有這個(gè)選項(xiàng),要想實(shí)現(xiàn)導(dǎo)入/導(dǎo)出數(shù)據(jù),要怎么辦呢?2011-04-04Win2008中安裝的MSSQL2005后無法訪問的解決方法
最近筆者一直在使用Win2008系統(tǒng),不過發(fā)現(xiàn)一個(gè)很奇怪的問題,那就是在該系統(tǒng)上安裝了SQL2005后,再在其他計(jì)算機(jī)訪問該主機(jī)顯示不能訪問2014-07-07詳解刪除SQL Server 2005 Compact Edition數(shù)據(jù)庫
這篇文章主要介紹了詳解刪除SQL Server 2005 Compact Edition數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下2017-06-06