

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 選択ルールと選択アクション
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Selections"></a>

テーブルマッピングを使用すると、選択ルールと選択アクションを使用することで、使用するテーブル、ビューやスキーマを指定できます。選択ルールタイプを使用するテーブルマッピングルールの場合、次の値を適用できます。

**警告**  
これらのルールに機密データを含めないでください。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/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) の 2 つのテーブルを移行します。移行タスクは、まず `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"
        }
    ]
}
```