

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

# SAP ASE (Sybase ASE) 到 PostgreSQL 轉換設定
<a name="schema-conversion-sybase-ase"></a>

當來源為 SAP ASE (Sybase ASE) 且目標為 Amazon RDS for PostgreSQL 或 Amazon Aurora PostgreSQL 時，會套用下列設定。您可以使用 AWS 管理主控台 或 [ModifyConversionConfiguration](https://docs.aws.amazon.com/dms/latest/APIReference/API_ModifyConversionConfiguration.html) API 操作來設定這些設定。

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

當您使用 API 或 AWS CLI 時，請在區段名稱 `SYBASE_ASE_TO_POSTGRESQL`、 `SYBASE_ASE_TO_POSTGRESQL_14`或 下指定轉換路徑設定`SYBASE_ASE_TO_POSTGRESQL_15`。所有三個版本控制的區段都接受相同的金鑰。若要尋找專案使用的區段名稱，請先呼叫 [DescribeConversionConfiguration](https://docs.aws.amazon.com/dms/latest/APIReference/API_DescribeConversionConfiguration.html)，並僅更新回應中存在的區段。

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

**目標引擎版本** (`SYBASE_ASE_TO_POSTGRESQL_target_engine_version`)  
選擇目標資料庫的引擎版本。此設定是 DMS 結構描述轉換目標用於轉換的 PostgreSQL 主要版本功能集，並決定套用哪些版本控制的設定區段 DMS 結構描述轉換 (`SYBASE_ASE_TO_POSTGRESQL_14` 或 `SYBASE_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 兩部分命名慣例 （資料庫 \+ 結構描述） 產生。      
[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/dms/latest/userguide/schema-conversion-sybase-ase.html)
**類型：**字串 （列舉）  
**預設**：`DB_SCHEMA`

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

**避免將運算元轉換為不區分大小寫的操作 **(`AvoidCastingToLowerCase`)  
指定 DMS 結構描述轉換是否針對轉換程式碼中不區分大小寫的操作，在運算元周圍新增自動`LOWER()`轉換。  
+ `false` — DMS 結構描述轉換會新增`LOWER()`轉換，以在不區分大小寫的比較之前標準化運算元。
+ `true` — DMS 結構描述轉換不會新增自動`LOWER()`轉換。當您的 PostgreSQL 資料庫使用`citext`擴充功能或不區分大小寫的定序，以原生方式處理比較時，請使用此選項。
**類型：**布林值 (`true` \| `false`)  
**預設**：`false`

## 範例：將 SAP ASE 設定為 PostgreSQL 設定
<a name="schema-conversion-sybase-ase-example"></a>

下列範例會設定 `CaseSensitivityNames`和 `SchemaNameTemplate`。將相同的設定套用至專案使用的每個區段名稱 （請先檢查 [DescribeConversionConfiguration](https://docs.aws.amazon.com/dms/latest/APIReference/API_DescribeConversionConfiguration.html) 的輸出）。

```
{
  "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"
  }
}
```