Oracle轉換SqlServer

來源:互聯網
上載者:User

      近期為公司的一個項目資料庫進行了轉換,將Oracle的Db轉換為SqlServer(2000或2005均可),一開始在網上找了一些資料,發現有個工具叫SwisSql的,嘗試了一下,沒成功,繼續尋找.後來經同事提醒,使用SqlServer的匯入和匯出工具,嘗試一下,確實可以轉換.操作步驟如下所述.

      所需要的環境比較簡單,就是本機可以同時串連Oracle和SqlServer即就,注意:這裡不必為Oracle資料庫建立ODBC,採用直連方式即可,需要建立一個SqlServer資料庫,用於載入Oracle的資料.下面以SqlServer2005為例

l 步驟1

      開啟Sqlserver,-1,選中目標資料庫,右鍵->任務->匯入資料

圖-1

l 步驟2:

      選擇”匯入資料”菜單,會出現嚮導,點擊下一步,出現-2所示介面

圖-2

      這裡要說明下,最好選擇”MicroSoft OLE DB Provider for Oracle方式,選擇另外一種方式匯入資料時會報錯.

輸入伺服器名稱和使用者密碼,測試成功後,一定要勾選”允許儲存密碼”

l 步驟3

      此步驟就是選擇目標資料庫,-3所示

圖-3

步驟4

      匯入資料有兩種方式,一種方式是可視化選擇Db表或視圖;另一種方式是通過sql語句實現,一般大量匯入選擇第一種方式

圖-4

l 步驟5

      此步驟就是選擇我們需要匯入的Db對象,-5所示

圖-5

      這裡說明一下,如果oracle中表的列資料類型沒有匹配成功,可以直接點擊”編輯”按鈕,直接編輯即可

      選擇好匯入Db對象以後,點擊”下一步”或”完成”,就開始匯入.一般來說,如果資料比較正常,不是特殊的Oracle資料,都是可以匯入的.

      下面說下我操作過程中遇到的問題,希望給大家有所提醒

      1. 匯入以後的Db表,可能主鍵或外鍵會丟失,需要我們自己去建立主鍵,自己寫sql文法實現就好了.

      2. Oracle中blob或clob類型的資料,在此處是無法匯入的,需要我們手工寫代碼匯入.比如表A,我們可以先用上述方法將非blog或clob欄位的資料導進來,然後寫代碼,執行update語句,將欄位值寫入其中即可

      3. 如果資料格式不符合條件,也不是不可以的,比如日期型欄位,oracle中可能這樣也會儲存0200-9-12,匯入時這行資料就會報錯,因為不符合日期類型格式,需要調整.

      4. Oracle轉換至SqlServer2000或SqlServer2005,所產生的結果是不一樣的,這個大家要注意.應該說,2005比2000要更加精確,無論是對資料還是對錶結構

      總之,這次匯入還是比較順利的,更重要的是比較簡單,比使用第三方工具要方便很多,因此,有些需求的朋友推薦此方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.