Sql-Server

Oracle 到 SQL 的遷移

  • August 25, 2009

我目前正在啟動一個從 Oracle 到 SQL 2008 遷移的項目。由於我目前正在閱讀從 Oracle 遷移到 SQL Server 2005 的官方 SSMA 指南,因此我想從個人經驗中獲得建議和指導。

指南和文章以有組織的方式突出顯示出現的問題、disutions 和解決方案將被 aprecieated。

謝謝

Oracle 和 SQL Server 在管理和數據庫使用方面都非常不同。

數據庫使用

準備好花相當多的時間移植。我頭頂的一些問題:

PL/SQL 與 T-SQL

語言本身的差異足以使您的腳本和儲存過程需要大量的移植工作。範圍從不同的連接運算符(||vs. +)到函式名稱和細微之處的變化(NVLvs. COALESCE),再到概念上的差異(異常處理、區分大小寫)。其他一些例子:

游標與臨時表

您在 Oracle 中使用游標所做的大部分事情都是在 SQL Server 中使用臨時表完成的。

序列與身份

它們大部分是等價的,但是您必須更改使用它們的任何過程的語法。

數據庫管理

它們大多具有相同的功能,有時使用不同的名稱並具有不同的副作用。一些亮點:

  • 數據(解除安裝)載入(數據泵或 sql*loader 或 exp/imp 與 DTS 或 bcp)
  • 數據字典(DBA_* 與 INFORMATION_SCHEMA)
  • 事務日誌設置(存檔日誌記錄與恢復模型)
  • 表類型(索引組織與聚集索引)
  • 鎖定機制(讀取在 Oracle 中不鎖定,在 SQL Server 中不鎖定)

簡而言之,從 Oracle 到 SQL Server(反之亦然)有相當長的學習曲線。隨意添加到此列表中。

引用自:https://serverfault.com/questions/27407