選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

了解 Oracle 到 PostgreSQL 轉換設定

焦點模式
了解 Oracle 到 PostgreSQL 轉換設定 - AWS 資料庫遷移服務

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

DMS 結構描述轉換中的 Oracle 到 PostgreSQL 轉換設定包括下列項目:

  • 若要使用生成式 AI 轉換適用的資料庫物件,請啟用生成式 AI 設定。使用生成式 AI 成功轉換的物件將明確識別為動作項目 5444,其中陳述:「此轉換使用機器學習模型,根據資料中的模式產生預測。」 如需詳細資訊,請參閱使用生成式 AI 轉換資料庫物件

    • 您可以轉換目標資料庫不同支援版本的結構描述,而不只是最新版本。若要指定版本,請使用目標引擎版本設定。可用的轉換選項會根據您選擇的引擎版本而有所不同。目前,支援 PostgreSQL 第 14 版和第 15 版 (它們有相同的設定)。請注意,在結構描述轉換期間使用不同於此設定中指定版本的目標引擎版本,可能會在執行套用至目標操作時導致相容性問題和錯誤。

  • AWS DMS 可以將 Oracle 具體化視觀表轉換為 PostgreSQL 上的資料表或具體化視觀表。對於具體化視觀表,請選擇來源具體化視觀表的轉換方式。

  • 您的來源 Oracle 資料庫可以使用 ROWID 虛擬資料欄。PostgreSQL 不支援類似的功能。DMS 結構描述轉換可以在轉換後程式碼中使用 bigintcharacter varying 資料類型來模擬 ROWID 虛擬資料欄。若要這麼做,請為資料列 ID 選擇使用 bigint 資料類型來模擬 ROWID 虛擬資料欄,或是使用 character varying 資料類型來模擬 ROWID 虛擬資料欄

    • 若要將 NUMBER 資料類型轉換為最適合的數值資料類型,視精確度和規模而定,您可以選取針對 NUMBER 資料類型的資料欄使用最佳化資料類型映射。

  • 如果您的來源 Oracle 程式碼不使用 ROWID 虛擬資料欄,請選擇不產生。在此情況下,轉換後的程式碼運作得更快。

  • 您的原始 Oracle 程式碼可以包含 TO_CHARTO_DATE、和 TO_NUMBER 函數,其中包含 PostgreSQL 不支援的參數。根據預設,DMS 結構描述轉換會在轉換後的程式碼中模擬這些參數的使用方式。

    當您的來源程式碼缺少 PostgreSQL 不支援的參數時,您可以使用原生的 PostgreSQL TO_CHARTO_DATETO_NUMBER 函數。在此情況下,轉換後的程式碼運作得更快。若要這樣做,請選取下列值:

    • 使用原生 PostgreSQL TO_CHAR 函數

    • 使用原生 PostgreSQL TO_DATE 函數

    • 使用原生 PostgreSQL TO_NUMBER 函數

  • 您的資料庫和應用程式可以在不同的時區執行。根據預設,DMS 結構描述轉換會模擬已轉換程式碼中的時區。但是,當您的資料庫和應用程式使用相同的時區時,就不需要此模擬。在此情況下,請選取改善資料庫和應用程式使用相同時區的已轉換程式碼效能

  • 若要繼續在轉換後的程式碼中使用序列,請選取使用來源端產生的最後一個值填入轉換後的序列

  • 在某些情況下,您的來源 Oracle 資料庫可能只會在 NUMBER 資料類型的主索引鍵或外部索引鍵資料欄中儲存整數值。在這些情況下, AWS DMS 可以將這些資料欄轉換為 BIGINT資料類型。這種方法可以提高轉換後程式碼的性能。若要這麼做,請選取將 NUMBER 資料類型的主索引鍵和外部索引鍵資料欄轉換為 BIGINT 資料類型。請確定您的來源未在這些資料行中包含浮點值,以避免資料遺失。

  • 若要略過原始程式碼中停用的觸發程序和條件約束,請選擇僅僅轉換作用中觸發程序和條件約束

  • 您可以使用 DMS 結構描述轉換來轉換稱為動態 SQL 的字串變數。您的資料庫程式碼可以變更這些字串變數的值。若要確保 AWS DMS 一律轉換此字串變數的最新版本,請選取轉換在稱為常式中建立的動態 SQL 程式碼

  • PostgreSQL 10 和更舊版本不支援程序。如果您不熟悉在 PostgreSQL 中使用程序, AWS DMS 可以將 Oracle 程序轉換為 PostgreSQL 函數。若要這樣做,請選取將程序轉換為函數

  • 欲查看已發生動作項目的其他資訊,您可以將特定功能新增至延伸套件。若要這麼做,請選取新增引發使用者定義例外狀況的延伸套件函數。然後選擇嚴重性層級,以引發使用者定義的例外狀況。請務必先轉換來源資料庫物件,之後再套用延伸套件結構描述。如需詳細了解延伸套件,請參閱:使用延伸套件

  • 您的來源 Oracle 資料庫可以包含自動產生名稱的限制條件。如果您的原始程式碼使用這些名稱,請務必選取保留系統產生的限制條件名稱。如果您的原始程式碼使用這些限制條件,但不使用其名稱,請清除此選項以提高轉換速度。

  • 如果來源和目標資料庫在不同的時區執行,模擬 SYSDATE 內建 Oracle 函數的函數會傳回與來源函數不同的值。若要確保來源和目標函數傳回相同的值,請選擇設定來源資料庫的時區

  • 您可以在轉換後的程式碼中使用 orafce 延伸模組中的函數。若要這麼做,請針對 Orafce 內建常式選取要使用的函數。如需有關 Orafce 的詳細資訊,請參閱 GitHub 上的 Orafce

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。