在SQL Server 2000數據庫中更改 master排序規則
此文章主要介紹的是在 SQL Server 2000 中正確轉換數據庫的實際排序規則,以及對實現 SQL Server 2000 中正確轉換數據庫的實際排序規則的步驟與在SQL Server 2000數據庫中更改 master 數據庫的排序規則等相關內容的介紹。
要在 SQL Server 2000 中轉換數據庫的排序規則,請按照下列步驟操作:
1. 備份源數據庫。
2. 注意所有列是否使用 COLLATE 子句。
3. 使用適當的排序規則在目標服務器上創建新的數據庫。
4. 如果沒有列使用 COLLATE 子句,請使用 DTS 將數據傳輸到目標服務器。為此,請啟用“使用排序規則”選項以進行代碼頁轉換,并將數據轉換為目標數據庫上的新排序規則。如果所有列均使用 COLLATE 子句,請按照下列步驟操作:
a. 為所有對象(不包括索引、觸發器、主鍵、外鍵、默認設置和約束)生成腳本。此外,確保啟用了“僅為與 7.0 版兼容的功能編寫腳本”選項,以便從腳本刪除 COLLATE 子句。
注意:使用“僅為與 7.0 版兼容的功能編寫腳本”選項時,可以更改排序規則。但是,生成腳本時將不考慮任何新的 SQL Server 2000 選項(包括用戶定義的函數、擴展屬性、INSTEAD OF 觸發器和視圖上的索引)。
b. 在目標數據庫上運行步驟 a 中創建的腳本,以便使用目標數據庫的排序規則創建對象。
c. 使用 DTS 僅傳輸源數據庫中的數據。
d. 成功傳輸數據后,將會為源數據庫中的所有約束、外鍵、主鍵和索引生成腳本。
e. 在目標數據庫上運行步驟 d 中創建的腳本。
更改 master 數據庫的排序規則
如果要更改 master 數據庫的排序規則,則必須重建 master 數據庫。在重建 master 數據庫時,實質上是創建了新的 master 數據庫。因此,重建 master 數據庫之前,應考慮下列事項:
確保創建了當前 master 數據庫的有效備份。在重建 master 數據庫時,還會重建 msdb 數據庫和 model 數據庫。因此,在重建 master 數據庫之前必須備份 msdb 數據庫和 model 數據庫。msdb 數據庫是用于存儲 SQL Server 作業、警報、運算符和 DTS 包的系統數據庫。model 數據庫是創建新數據庫時所使用的模板數據庫。
因為重建 master 數據庫會創建一個新的 master 數據庫,所以必須在重建 master 數據庫之后重新輸入現有登錄信息。因此,還必須在重建 master 數據庫之前導出登錄信息,然后在重建 master 數據庫后,導入登錄信息。
因為在重建 master 數據庫時會重建 msdb 數據庫,所以在重建 master 數據庫之前,必須為所有作業、警報和運算符生成腳本。此外,還必須確保移動了所有 DTS 包。
因為在重建 master 數據庫時會重建 model 數據庫,所以在重建 master 數據庫之前,必須記下或導出以前對 model 數據庫所做的全部更改或為其生成腳本。重建 model 數據庫之后,請重新應用已記錄的全部更改。
在 SQL Server 2000 中更改 master 數據庫的排序規則
更改 master 數據庫的排序規則之前,請按照下列步驟操作:
1. 重建 master 數據庫之后,不會自動恢復在重建此數據庫之前創建的所有數據庫。因此,所有數據庫必須從備份進行還原,或者如果文件仍在磁盤上,則可以使用 sp_attach_db 系統存儲過程重新附加數據庫。
請確保在重建 master 數據庫之前將所有必要的信息重新附加到現有數據庫。有關 sp_attach_db 系統存儲過程的更多信息,請訪問下面的 MSDN 網站:http://msdn2.microsoft.com/en-us/library/aa259611(SQL.80).aspx (http://msdn2.microsoft.com/en-us/library/aa259611(SQL.80).aspx)
2. 在重建 master 數據庫時,僅更改 master 數據庫、model 數據庫和 msdb 數據庫的排序規則。不會更改用戶數據庫的排序規則。要更改現有用戶數據庫的排序規則或者使用適當的排序規則創建新的數據庫,請使用 ALTER DATABASE 命令,然后使用 DTS 或 bcp 實用工具將數據傳輸到新的數據庫。
注意:如果在 SQL Server 2000 中使用 ALTER DATABASE 命令來更改數據庫的排序規則,則表中列的排序規則將不會自動更改。要更改列的排序規則,請使用 ALTER TABLE 命令和 ALTER COLUMN 命令。
如果使用 DTS,則可以在傳輸數據或使用“使用排序規則”選項之前,使用適當的排序規則創建表和列。如果使用的 DTS 和表已經包含適當的排序規則,請確保在運行軟件包之前禁用了“首先刪除現有對象”選項。
在 SQL Server 7.0 中更改更改 master 數據庫的排序規則之前,請按照下列步驟操作:
1. SQL Server 7.0 不支持數據庫使用除默認排序規則以外的排序規則。因此,在重建 master 數據庫之前,請從用戶數據庫中導出所有數據。
2. 為數據庫中的所有對象生成腳本。
3. 使用適當的排序規則重新創建 master 數據庫。
4. 創建新的數據庫。使用新的默認排序規則自動創建新的數據庫。
5. 運行以前保存的腳本以重新創建對象,然后導入以前導出的數據。
【編輯推薦】
- SQL Server 2000 安裝時出現的癥狀歸納
- 向外擴展SQL Server實現更高擴展性
- 正確識別SQL Server 版本號的操作方案
- SQL Server子查詢的作用是什么?
- SQL Server 數據庫中管理常用的SQL與T-SQL