

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

# 選取規則與動作
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Selections"></a>

使用資料表映射，您可以透過選取規則及動作來指定您希望使用的資料表、檢視或結構描述。針對使用選取規則類型的資料表映射規則，可套用下列值。

**警告**  
請勿在這些規則中包含任何敏感資料。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Selections.html)

**Example 遷移結構描述中的所有資料表**  
以下範例會從名為 `Test` 的結構描述，將您來源中的所有資料表遷移到目標端點。  

```
{
    "rules": [
        {
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "Test",
                "table-name": "%"
            },
            "rule-action": "include"
        }
    ]
}
```

**Example 遷移結構描述中的部分資料表**  
以下範例會從名為 `Test` 的結構描述，將您來源中除了開頭為 `DMS` 之外的所有資料表遷移到目標端點。  

```
{
    "rules": [
        {
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "Test",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "selection",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "Test",
                "table-name": "DMS%"
            },
            "rule-action": "exclude"
        }
    ]
}
```

**Example 遷移單一結構描述中指定的單一資料表**  
以下範例從來源中的 `NewCust` 結構描述將 `Customer` 資料表遷移到目標端點。  

```
{
    "rules": [
        {
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "NewCust",
                "table-name": "Customer"
            },
            "rule-action": "explicit"
        }
    ]
}
```
您可以指定多個選擇規則，在多個資料表和結構描述上明確地選取。

**Example 以設定的順序遷移資料表**  
資料表和檢視會根據其負載順序值進行遷移，而較高值會在遷移序列中接收優先順序。下列範例會遷移兩個資料表，優先順序值`loadfirst`為 2，`loadsecond`優先順序值為 1，遷移任務會先處理`loadfirst`資料表，再繼續處理`loadsecond`資料表。此優先順序機制可確保在遷移過程中遵守資料庫物件之間的相依性。  

```
{
    "rules": [
        {
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "Test",
                "table-name": "loadsecond"
            },
            "rule-action": "include",
            "load-order": "1"
        },
        {
            "rule-type": "selection",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "Test",
                "table-name": "loadfirst"
            },
            "rule-action": "include",
            "load-order": "2"
        }
    ]
}
```

**注意**  
`load-order` 適用於資料表初始化。如果 `MaxFullLoadSubTasks` 大於 1，則連續資料表的載入不會等待先前的資料表載入完成。

**Example 遷移結構描述中的部分檢視**  
以下範例會從名為 `Test` 的結構描述，將您來源中的一些檢視遷移至目標中的對等資料表。  

```
{
   "rules": [
        {
           "rule-type": "selection",
           "rule-id": "2",
           "rule-name": "2",
           "object-locator": {
               "schema-name": "Test",
               "table-name": "view_DMS%",
               "table-type": "view"
            },
           "rule-action": "include"
        }
    ]
}
```

**Example 遷移結構描述中的所有資料表和檢視**  
以下範例會從名為 `report` 的結構描述，將您來源中的所有資料表和檢視遷移至目標中的對等資料表。  

```
{
   "rules": [
        {
           "rule-type": "selection",
           "rule-id": "3",
           "rule-name": "3",
           "object-locator": {
               "schema-name": "report",
               "table-name": "%",
               "table-type": "all"
            },
           "rule-action": "include"
        }
    ]
}
```