View a markdown version of this page

SAP ASE (Sybase ASE) 到 PostgreSQL 轉換設定 - AWS 資料庫遷移服務

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

SAP ASE (Sybase ASE) 到 PostgreSQL 轉換設定

當來源為 SAP ASE (Sybase ASE) 且目標為 Amazon RDS for PostgreSQL 或 Amazon Aurora PostgreSQL 時,會套用下列設定。您可以使用 AWS 管理主控台 或 ModifyConversionConfiguration API 操作來設定這些設定。

本主題涵蓋 SAP ASE 至 PostgreSQL 轉換路徑的特定設定。除了這些設定之外,DMS 結構描述轉換還提供適用於所有來源和目標對的設定,例如轉換後 SQL 中動作項目註解的嚴重性等級,以及使用生成式 AI 轉換的選項。如需這些設定,請參閱 常見的轉換設定

當您使用 API 或 AWS CLI 時,請在區段名稱 SYBASE_ASE_TO_POSTGRESQLSYBASE_ASE_TO_POSTGRESQL_14或 下指定轉換路徑設定SYBASE_ASE_TO_POSTGRESQL_15。所有三個版本控制的區段都接受相同的金鑰。若要尋找專案使用的區段名稱,請先呼叫 DescribeConversionConfiguration,並僅更新回應中存在的區段。

每個設定都會在括號中顯示 API 和 AWS CLI 參數名稱後面的 AWS 管理主控台 標籤。使用 API 或 CLI AWS 設定設定時,請使用 參數名稱。

目標引擎版本 (SYBASE_ASE_TO_POSTGRESQL_target_engine_version)

選擇目標資料庫的引擎版本。此設定是 DMS 結構描述轉換目標用於轉換的 PostgreSQL 主要版本功能集,並決定套用哪些版本控制的設定區段 DMS 結構描述轉換 (SYBASE_ASE_TO_POSTGRESQL_14SYBASE_ASE_TO_POSTGRESQL_15)。此值15以 PostgreSQL 15 和更新版本的功能為目標,並以 PostgreSQL 14 的功能14為目標,因此您的目標資料庫可以執行比您選擇的值更高的版本 (例如 PostgreSQL 15 16 目標的值)。 PostgreSQL 與此頁面上的其他設定不同,此設定不會存放在轉換路徑區段中。而是存放在最上層Conversion version區段,如下列範例所示。

{ "Conversion version": { "SYBASE_ASE_TO_POSTGRESQL_target_engine_version": "15" } }

類型:字串 (14 | 15)

預設15

中繼資料設定

控制在轉換期間如何處理來源 SAP ASE 中繼資料 – 物件名稱、結構描述結構和索引定義的設定。

將來源資料庫物件名稱視為區分大小寫 (CaseSensitivityNames)

指定 DMS 結構描述轉換是否在轉換期間將來源物件名稱視為區分大小寫。

  • true — DMS 結構描述轉換會將物件名稱保留在原始案例中,並以雙引號識別符 (例如 "MyTable") 包裝。當您的應用程式使用混合大小寫名稱參考物件時,請使用此選項。

  • false — DMS 結構描述轉換會將物件名稱摺疊為小寫,無需引號 (例如 mytable)。

類型:布林值 (true | false)

預設false

產生索引的唯一名稱 (GenerateUniqueNamesForIndexes)

指定 DMS 結構描述轉換是否在目標結構描述中產生唯一的索引名稱。在 SAP ASE 中,您可以在不同的資料表上建立具有相同名稱的索引,但 PostgreSQL 要求結構描述中的所有索引名稱都是唯一的。

  • false — DMS 結構描述轉換會保留來源的索引名稱。如果多個資料表上存在相同的索引名稱,則 PostgreSQL 的部署可能會失敗,並出現重複的名稱錯誤。

  • true — DMS 結構描述轉換會將字首新增至索引名稱,以確保結構描述的唯一性。當您的來源結構描述在不同資料表上有相同名稱的索引時,請使用此選項。

類型:布林值 (true | false)

預設false

結構描述名稱 (SchemaNameTemplate)

控制目標 PostgreSQL 結構描述名稱如何從 SAP ASE 兩部分命名慣例 (資料庫 + 結構描述) 產生。

主控台標籤 API/CLI 值 產生的目標結構描述名稱
DB_SCHEMA DB_SCHEMA database_schema (例如,pubs2_dbo)。將多個資料庫遷移至相同的 PostgreSQL 執行個體時使用 ,以避免名稱衝突。
資料庫 DB 資料庫 (例如,pubs2)。
結構描述 SCHEMA 結構描述 (例如,dbo)。遷移單一資料庫時使用 ,而且您想要乾淨的結構描述名稱,但沒有資料庫字首。

類型:字串 (列舉)

預設DB_SCHEMA

SQL 程式碼設定

控制 SAP ASE 程式碼 — 識別符和不區分大小寫的操作在轉換期間如何處理的設定。

避免將運算元轉換為不區分大小寫的操作 (AvoidCastingToLowerCase)

指定 DMS 結構描述轉換是否針對轉換程式碼中不區分大小寫的操作,在運算元周圍新增自動LOWER()轉換。

  • false — DMS 結構描述轉換會新增LOWER()轉換,以在不區分大小寫的比較之前標準化運算元。

  • true — DMS 結構描述轉換不會新增自動LOWER()轉換。當您的 PostgreSQL 資料庫使用citext擴充功能或不區分大小寫的定序,以原生方式處理比較時,請使用此選項。

類型:布林值 (true | false)

預設false

範例:將 SAP ASE 設定為 PostgreSQL 設定

下列範例會設定 CaseSensitivityNamesSchemaNameTemplate。將相同的設定套用至專案使用的每個區段名稱 (請先檢查 DescribeConversionConfiguration 的輸出)。

{ "SYBASE_ASE_TO_POSTGRESQL_15": { "CaseSensitivityNames": true, "SchemaNameTemplate": "SCHEMA" }, "SYBASE_ASE_TO_POSTGRESQL_14": { "CaseSensitivityNames": true, "SchemaNameTemplate": "SCHEMA" }, "SYBASE_ASE_TO_POSTGRESQL": { "CaseSensitivityNames": true, "SchemaNameTemplate": "SCHEMA" } }