

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

# 字元替換任務設定
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.CharacterSubstitution"></a>

您可以指定複寫任務針對具有 AWS DMS `STRING`或 `WSTRING`資料類型的所有來源資料庫資料欄，在目標資料庫上執行字元替換。如需使用任務組態檔案來設定任務設定的相關資訊，請參閱：[任務設定範例](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example)。

您可以使用來自下列來源和目標資料庫的端點，為任何任務設定字元替換：
+ 來源資料庫：
  + Oracle
  + Microsoft SQL Server
  + MySQL
  + MariaDB
  + PostgreSQL
  + SAP Adaptive Server Enterprise (ASE)
  + IBM Db2 LUW
+ 目標資料庫：
  + Oracle
  + Microsoft SQL Server
  + MySQL
  + MariaDB
  + PostgreSQL
  + SAP Adaptive Server Enterprise (ASE)
  + Amazon Redshift

您可以在任務設定中使用 `CharacterSetSettings` 參數來指定字元替換。這些字元替換會針對使用 Unicode 字碼指標值 (十六進位表示法) 指定的字元。如果同時指定兩者，您可以依下列順序實作兩階段替換：

1. **個別字元取代** – AWS DMS 可以將來源上所選字元的值取代為目標上對應字元的指定取代值。使用 `CharacterSetSettings` 中的 `CharacterReplacements` 陣列來選取具有您指定之 Unicode 字碼指標的所有來源字元。也使用此陣列來指定目標上對應字元的取代字碼指標。

   若要選取來源上具有指定程式碼指標的所有字元，請將 `CharacterReplacements` 陣列中的 `SourceCharacterCodePoint` 執行個體設定為該程式碼指標。然後，透過設定此陣列 `TargetCharacterCodePoint` 中對應的執行個體，指定所有同等目標字元的取代字碼指標。若要刪除目標字元而非取代它們，請將適當的 `TargetCharacterCodePoint` 執行個體設定為零 (0)。您可以透過在 `CharacterReplacements` 陣列中指定額外的 `SourceCharacterCodePoint` 和 `TargetCharacterCodePoint` 設定對，來取代或刪除任意數量的目標字元值。如果您為 `SourceCharacterCodePoint` 的多個執行個體指定相同的值，最後 `TargetCharacterCodePoint` 的對應設定的值會套用至目標。

   例如，假設您為 `CharacterReplacements` 指定下列值。

   ```
   "CharacterSetSettings": {
       "CharacterReplacements": [ {
           "SourceCharacterCodePoint": 62,
           "TargetCharacterCodePoint": 61
           }, {
           "SourceCharacterCodePoint": 42,
           "TargetCharacterCodePoint": 41
           }
       ]
   }
   ```

   在此範例中， 會將目標上具有來源碼點十六進位值 62 的所有字元 AWS DMS 取代為程式碼點值 61 的字元。此外，以代碼點值為 41 的字元 AWS DMS 取代目標上具有來源碼點 42 的所有字元。換言之， AWS DMS 會以字母 `'a'` 取代目標上字母 `'b'` 的所有執行個體。同樣地， 會以字母 AWS DMS 取代目標`'B'`上的字母所有執行個體`'A'`。

1. **字元集驗證和替換** – 完成任何個別字元替換後， AWS DMS 可以確保所有目標字元在您指定的單一字元集中都有有效的 Unicode 程式碼點。您可以在 `CharacterSetSettings` 中使用 `CharacterSetSupport` 來設定此目標字元驗證和修改。若要指定驗證字元集，請將 `CharacterSetSupport` 中的 `CharacterSet` 設為字元集的字串值。(`CharacterSet` 的可能值如下。) 您可以透過下列其中一種方式 AWS DMS 修改無效的目標字元：
   + 為所有無效目標字元指定單一替換 Unicode 字碼指標，無論其目前的字碼指標為何。若要設定此取代程式碼指標，請將 `CharacterSetSupport` 中的 `ReplaceWithCharacterCodePoint` 設為指定的值。
   + 將 `ReplaceWithCharacterCodePoint` 設為零 (0)，以設定刪除所有無效的目標字元。

   例如，假設您為 `CharacterSetSupport` 指定下列值。

   ```
   "CharacterSetSettings": {
       "CharacterSetSupport": {
           "CharacterSet": "UTF16_PlatformEndian",
           "ReplaceWithCharacterCodePoint": 0
       }
   }
   ```

   在此範例中， 會 AWS DMS 刪除在字元集中無效的目標上找到的任何`"UTF16_PlatformEndian"`字元。因此，它會刪除任何以十六進位值 `2FB6` 指定的字元。此值無效，因為這是 4 位元組 Unicode 字碼指標，而 UTF16 字元集僅接受具有 2 位元組字碼指標的字元。

**注意**  
複寫任務會先完成所有指定的字元替換，再啟動您透過資料表映射指定的任何全域或資料表層級轉換。如需資料表映射的詳細資訊，請參閱[使用資料表映射指定任務設定](CHAP_Tasks.CustomizingTasks.TableMapping.md)。  
字元替換不支援 LOB 資料類型。這包括 DMS 認為是 LOB 資料類型的任何資料類型。例如，在 Oracle 中的 `Extended` 資料類型被認為是 LOB。如需有關來源資料類型的詳細資訊，請參閱下列 [Oracle 的來源資料類型](CHAP_Source.Oracle.md#CHAP_Source.Oracle.DataTypes)：

 AWS DMS 支援 的值`CharacterSet`會顯示在下表中。


|  |  |  | 
| --- |--- |--- |
| UTF-8 | ibm-860\_P100-1995 | ibm-280\_P100-1995 | 
| UTF-16 | ibm-861\_P100-1995 | ibm-284\_P100-1995 | 
| UTF-16BE | ibm-862\_P100-1995 | ibm-285\_P100-1995 | 
| UTF-16LE | ibm-863\_P100-1995 | ibm-290\_P100-1995 | 
| UTF-32 | ibm-864\_X110-1999 | ibm-297\_P100-1995 | 
| UTF-32BE | ibm-865\_P100-1995 | ibm-420\_X120-1999 | 
| UTF-32LE | ibm-866\_P100-1995 | ibm-424\_P100-1995 | 
| UTF16\_PlatformEndian | ibm-867\_P100-1998 | ibm-500\_P100-1995 | 
| UTF16\_OppositeEndian | ibm-868\_P100-1995 | ibm-803\_P100-1999 | 
| UTF32\_PlatformEndian | ibm-869\_P100-1995 | ibm-838\_P100-1995 | 
| UTF32\_OppositeEndian | ibm-878\_P100-1996 | ibm-870\_P100-1995 | 
| UTF-16BE,version=1 | ibm-901\_P100-1999 | ibm-871\_P100-1995 | 
| UTF-16LE,version=1 | ibm-902\_P100-1999 | ibm-875\_P100-1995 | 
| UTF-16,version=1 | ibm-922\_P100-1999 | ibm-918\_P100-1995 | 
| UTF-16,version=2 | ibm-1168\_P100-2002 | ibm-930\_P120-1999 | 
| UTF-7 | ibm-4909\_P100-1999 | ibm-933\_P110-1995 | 
| IMAP-mailbox-name | ibm-5346\_P100-1998 | ibm-935\_P110-1999 | 
| SCSU | ibm-5347\_P100-1998 | ibm-937\_P110-1999 | 
| BOCU-1 | ibm-5348\_P100-1997 | ibm-939\_P120-1999 | 
| CESU-8 | ibm-5349\_P100-1998 | ibm-1025\_P100-1995 | 
| ISO-8859-1 | ibm-5350\_P100-1998 | ibm-1026\_P100-1995 | 
| US-ASCII | ibm-9447\_P100-2002 | ibm-1047\_P100-1995 | 
| gb18030 | ibm-9448\_X100-2005 | ibm-1097\_P100-1995 | 
| ibm-912\_P100-1995 | ibm-9449\_P100-2002 | ibm-1112\_P100-1995 | 
| ibm-913\_P100-2000 | ibm-5354\_P100-1998 | ibm-1122\_P100-1999 | 
| ibm-914\_P100-1995 | ibm-1250\_P100-1995 | ibm-1123\_P100-1995 | 
| ibm-915\_P100-1995 | ibm-1251\_P100-1995 | ibm-1130\_P100-1997 | 
| ibm-1089\_P100-1995 | ibm-1252\_P100-2000 | ibm-1132\_P100-1998 | 
| ibm-9005\_X110-2007 | ibm-1253\_P100-1995 | ibm-1137\_P100-1999 | 
| ibm-813\_P100-1995 | ibm-1254\_P100-1995 | ibm-4517\_P100-2005 | 
| ibm-5012\_P100-1999 | ibm-1255\_P100-1995 | ibm-1140\_P100-1997 | 
| ibm-916\_P100-1995 | ibm-5351\_P100-1998 | ibm-1141\_P100-1997 | 
| ibm-920\_P100-1995 | ibm-1256\_P110-1997 | ibm-1142\_P100-1997 | 
| iso-8859\_10-1998 | ibm-5352\_P100-1998 | ibm-1143\_P100-1997 | 
| iso-8859\_11-2001 | ibm-1257\_P100-1995 | ibm-1144\_P100-1997 | 
| ibm-921\_P100-1995 | ibm-5353\_P100-1998 | ibm-1145\_P100-1997 | 
| iso-8859\_14-1998 | ibm-1258\_P100-1997 | ibm-1146\_P100-1997 | 
| ibm-923\_P100-1998 | macos-0\_2-10.2 | ibm-1147\_P100-1997 | 
| ibm-942\_P12A-1999 | macos-6\_2-10.4 | ibm-1148\_P100-1997 | 
| ibm-943\_P15A-2003 | macos-7\_3-10.2 | ibm-1149\_P100-1997 | 
| ibm-943\_P130-1999 | macos-29-10.2 | ibm-1153\_P100-1999 | 
| ibm-33722\_P12A\_P12A-2009\_U2 | macos-35-10.2 | ibm-1154\_P100-1999 | 
| ibm-33722\_P120-1999 | ibm-1051\_P100-1995 | ibm-1155\_P100-1999 | 
| ibm-954\_P101-2007 | ibm-1276\_P100-1995 | ibm-1156\_P100-1999 | 
| euc-jp-2007 | ibm-1006\_P100-1995 | ibm-1157\_P100-1999 | 
| ibm-1373\_P100-2002 | ibm-1098\_P100-1995 | ibm-1158\_P100-1999 | 
| windows-950-2000 | ibm-1124\_P100-1996 | ibm-1160\_P100-1999 | 
| ibm-950\_P110-1999 | ibm-1125\_P100-1997 | ibm-1164\_P100-1999 | 
| ibm-1375\_P100-2008 | ibm-1129\_P100-1997 | ibm-1364\_P110-2007 | 
| ibm-5471\_P100-2006 | ibm-1131\_P100-1997 | ibm-1371\_P100-1999 | 
| ibm-1386\_P100-2001 | ibm-1133\_P100-1997 | ibm-1388\_P103-2001 | 
| windows-936-2000 | ISO\_2022,locale=ja,version=0 | ibm-1390\_P110-2003 | 
| ibm-1383\_P110-1999 | ISO\_2022,locale=ja,version=1 | ibm-1399\_P110-2003 | 
| ibm-5478\_P100-1995 | ISO\_2022,locale=ja,version=2 | ibm-5123\_P100-1999 | 
| euc-tw-2014 | ISO\_2022,locale=ja,version=3 | ibm-8482\_P100-1999 | 
| ibm-964\_P110-1999 | ISO\_2022,locale=ja,version=4 | ibm-16684\_P110-2003 | 
| ibm-949\_P110-1999 | ISO\_2022,locale=ko,version=0 | ibm-4899\_P100-1998 | 
| ibm-949\_P11A-1999 | ISO\_2022,locale=ko,version=1 | ibm-4971\_P100-1999 | 
| ibm-970\_P110\_P110-2006\_U2 | ISO\_2022,locale=zh,version=0 | ibm-9067\_X100-2005 | 
| ibm-971\_P100-1995 | ISO\_2022,locale=zh,version=1 | ibm-12712\_P100-1998 | 
| ibm-1363\_P11B-1998 | ISO\_2022,locale=zh,version=2 | ibm-16804\_X110-1999 | 
| ibm-1363\_P110-1997 | HZ | ibm-37\_P100-1995,swaplfnl | 
| windows-949-2000 | x11-compound-text | ibm-1047\_P100-1995,swaplfnl | 
| windows-874-2000 | ISCII,version=0 | ibm-1140\_P100-1997,swaplfnl | 
| ibm-874\_P100-1995 | ISCII,version=1 | ibm-1141\_P100-1997,swaplfnl | 
| ibm-1162\_P100-1999 | ISCII,version=2 | ibm-1142\_P100-1997,swaplfnl | 
| ibm-437\_P100-1995 | ISCII,version=3 | ibm-1143\_P100-1997,swaplfnl | 
| ibm-720\_P100-1997 | ISCII,version=4 | ibm-1144\_P100-1997,swaplfnl | 
| ibm-737\_P100-1997 | ISCII,version=5 | ibm-1145\_P100-1997,swaplfnl | 
| ibm-775\_P100-1996 | ISCII,version=6 | ibm-1146\_P100-1997,swaplfnl | 
| ibm-850\_P100-1995 | ISCII,version=7 | ibm-1147\_P100-1997,swaplfnl | 
| ibm-851\_P100-1995 | ISCII,version=8 | ibm-1148\_P100-1997,swaplfnl | 
| ibm-852\_P100-1995 | LMBCS-1 | ibm-1149\_P100-1997,swaplfnl | 
| ibm-855\_P100-1995 | ibm-37\_P100-1995 | ibm-1153\_P100-1999,swaplfnl | 
| ibm-856\_P100-1995 | ibm-273\_P100-1995 | ibm-12712\_P100-1998,swaplfnl | 
| ibm-857\_P100-1995 | ibm-277\_P100-1995 | ibm-16804\_X110-1999,swaplfnl | 
| ibm-858\_P100-1997 | ibm-278\_P100-1995 | ebcdic-xml-us | 