

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

# CreateTable
<a name="API_CreateTable_v20111205"></a>

**重要**  
***本節涉及不該再用於新應用程式的已棄用 API 版本 2011-12-05。***  
 **如需目前低階 API 的文件，請參閱[Amazon DynamoDB API 參考](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/)。**

## 描述
<a name="API_CreateTable_Description"></a>

`CreateTable` 操作會將新的資料表新增到帳戶。

在與發出請求的 AWS 帳戶和接收請求的 AWS 區域 (例如 dynamodb.us-west-2.amazonaws.com) 相關聯的資料表當中，資料表名稱必須是唯一的。每個 DynamoDB 端點都是完全獨立的。例如，如果有兩個名為 MyTable 的資料表，一個在 dynamodb.us-west-2.amazonaws.com 中，另一個在 dynamodb.us-west-1.amazonaws.com 中，則兩者完全獨立，不會共用任何資料。

`CreateTable` 操作會觸發非同步工作流程以開始建立資料表。DynamoDB 會立即傳回資料表狀態 (`CREATING`)，直到資料表處於 `ACTIVE` 狀態。一旦資料表處於 `ACTIVE` 狀態，您便可執行資料平面操作。

使用 [DescribeTables](API_DescribeTables_v20111205.md) 操作來檢查資料表的狀態。

## 請求
<a name="API_CreateTable_RequestParameters"></a>

### 語法
<a name="API_CreateTable_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB 低階 API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.CreateTable 
content-type: application/x-amz-json-1.0 

{"TableName":"Table1",
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10}
}
```


****  

|  名稱  |  描述  |  必要 | 
| --- | --- | --- | 
|  TableName  |  要建立的資料表名稱。允許的字元為 a-z、A-Z、0-9、\$1 (底線)、- (破折號) 和 . (點)。名稱長度可介於 3 到 255 個字元之間。 類型：字串  |  是  | 
|  KeySchema  | 資料表的主索引鍵 (簡單或複合) 結構。需要 `HashKeyElement` 的名稱值組，且可選用 `RangeKeyElement` 的名稱值組 (僅適用於複合主索引鍵)。如需主索引鍵的詳細資訊，請參閱 [主索引鍵](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey)。主索引鍵元素名稱長度可以介於 1 到 255 個字元之間，且沒有字元限制。 AttributeType 的可能值為「S」(字串)、「N」(數字) 或「B」(二進位)。類型：複合主索引鍵的 `HashKeyElement` 或 `HashKeyElement` 和 `RangeKeyElement` 映射。 | 是 | 
|  ProvisionedThroughput  | 指定資料表的新輸送量，包括 ReadCapacityUnits 與 WriteCapacityUnits 的值。如需詳細資訊，請參閱 [DynamoDB 佈建容量模式](provisioned-capacity-mode.md)。 如需目前的最大/最小值，請參閱 [Amazon DynamoDB 中的配額](ServiceQuotas.md)。 類型：陣列  | 是 | 
| ProvisionedThroughput: ReadCapacityUnits |  設定 DynamoDB 與其他操作平衡負載之前，所指定資料表每秒所需的最低一致性 `ReadCapacityUnits` 數目。 最終一致讀取操作比一致性讀取負擔更輕，因此每秒 50 次一致性 `ReadCapacityUnits` 的設定可提供每秒 100 次最終一致 `ReadCapacityUnits`。類型：數字  | 是 | 
| ProvisionedThroughput: WriteCapacityUnits | 設定 DynamoDB 與其他操作平衡負載之前，所指定資料表每秒所需的最低 WriteCapacityUnits 數目。類型：數字  | 是 | 

## 回應
<a name="API_CreateTable_CommonResponseElements"></a>

### 語法
<a name="API_CreateTable_CommonResponseElements.syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT

{"TableDescription":
    {"CreationDateTime":1.310506263362E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10},
    "TableName":"Table1",
    "TableStatus":"CREATING"
    }
}
```


****  

|  名稱  |  描述  | 
| --- | --- | 
| TableDescription  | 資料表屬性的容器。 | 
| CreationDateTime | 建立資料表時的 [UNIX epoch 格式](http://www.epochconverter.com/)日期。類型：數字 | 
| KeySchema  | 資料表的主索引鍵 (簡單或複合) 結構。需要 `HashKeyElement` 的名稱值組，且可選用 `RangeKeyElement` 的名稱值組 (僅適用於複合主索引鍵)。如需主索引鍵的詳細資訊，請參閱 [主索引鍵](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey)。類型：複合主索引鍵的 `HashKeyElement` 或 `HashKeyElement` 和 `RangeKeyElement` 映射。 | 
| ProvisionedThroughput  |  指定資料表的輸送量，包括 `ReadCapacityUnits` 與 `WriteCapacityUnits` 的值。請參閱 [DynamoDB 佈建容量模式](provisioned-capacity-mode.md)。 類型：陣列   | 
| ProvisionedThroughput :ReadCapacityUnits |  DynamoDB 與其他操作平衡負載之前，每秒所需的最低 `ReadCapacityUnits` 數目。類型：數字  | 
| ProvisionedThroughput :WriteCapacityUnits |  `WriteCapacityUnits` 與其他操作平衡負載之前，每秒所需的最低 `ReadCapacityUnits` 數目。類型：數字  | 
|  TableName  |  已建立的資料表名稱。 類型：字串  | 
|  TableStatus  | 資料表目前的狀態 (`CREATING`)。一旦資料表處於 `ACTIVE` 狀態，您便可將資料放入其中。使用 [DescribeTables](API_DescribeTables_v20111205.md) API 來檢查資料表狀態。類型：字串 | 

## 特殊錯誤
<a name="API_CreateTable_SpecialErrors"></a>


****  

|  錯誤  |  描述  | 
| --- | --- | 
|  ResourceInUseException  | 嘗試重新建立已存在的資料表。 | 
|  LimitExceededException  | 同步資料表請求數 (`CREATING`、`DELETING` 或 `UPDATING` 狀態) 超出所允許的上限。 如需目前的最大/最小值，請參閱 [Amazon DynamoDB 中的配額](ServiceQuotas.md)。 .  | 

## 範例
<a name="API_CreateTable_Examples"></a>

以下範例會使用包含一個字串和數字的複合主索引鍵建立資料表。如需使用 AWS 開發套件的範例，請參閱 [在 DynamoDB 中使用資料表和資料](WorkingWithTables.md)。

### 請求範例
<a name="API_CreateTable_Examples_Request"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB 低階 API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.CreateTable 
content-type: application/x-amz-json-1.0


{"TableName":"comp-table",
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10}
}
```

### 回應範例
<a name="API_CreateTable_Examples_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT

{"TableDescription":
    {"CreationDateTime":1.310506263362E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10},
    "TableName":"comp-table",
    "TableStatus":"CREATING"
    }
}
```

## 相關動作
<a name="API_CreateTable_Related_Actions"></a>
+  [DescribeTables](API_DescribeTables_v20111205.md) 
+  [DeleteTable](API_DeleteTable_v20111205.md)