调用CreateTable创建一个MaxCompute表或视图。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateTable |
要执行的操作。 |
Columns.N.ColumnName | String | 是 | columnName1 |
字段的名称。 |
Columns.N.ColumnType | String | 是 | string |
字段的类型。 |
HasPart | Integer | 是 | 0 |
创建的MaxCompute表是否为分区表:
|
RegionId | String | 是 | cn-shanghai |
地域信息,通常为服务所在的地域。例如,华东2(上海)为cn-shanghai,华北3(张家口)为cn-zhangjiakou。您无需填写RegionId,会根据调用的Endpoint自动解析。 |
TableName | String | 是 | tableName1 |
表的名称。 |
Columns.N.ColumnNameCn | String | 否 | 中文名 |
字段的中文名称。 |
Columns.N.SeqNumber | Integer | 否 | 1 |
字段的序列号。您可以指定字段在表中的排序,默认按照创建请求的顺序排序。 |
Columns.N.Length | Integer | 否 | 10 |
字段的长度。 |
Columns.N.IsPartitionCol | Integer | 否 | 0 |
当前字段是否为分区字段:
|
Columns.N.IsPrimaryKey | Integer | 否 | 0 |
当前字段是否为主键:
|
Columns.N.IsNullable | Integer | 否 | 1 |
是否允许当前字段为空:
|
Columns.N.Comment | String | 否 | 备注 |
字段的备注。 |
IsView | Integer | 否 | 0 |
指定创建视图或创建表:
|
Visibility | Integer | 否 | 1 |
表或工作空间是否可见:
|
LifeCycle | Integer | 否 | 10 |
表的生命周期。默认取值为空,表示永久存储。 |
CategoryId | Long | 否 | 101 |
关联类目的ID。您可以通过GetMetaCategory接口查询可以关联的类目ID。 |
LogicalLevelId | Long | 否 | 101 |
逻辑层级ID。 |
PhysicsLevelId | Long | 否 | 101 |
物理层级ID。 |
ExternalTableType | String | 否 | 0 |
外部表的存储类型。取值如下:
|
Location | String | 否 | location |
外部表的存储地址。 |
ProjectId | Long | 否 | 23 |
DataWorks工作空间的ID。 |
Endpoint | String | 否 | odps://abc |
MaxCompute的Endpoint。 |
EnvType | Integer | 否 | 1 |
DataWorks工作空间的环境。取值如下:
|
Themes.N.ThemeId | Long | 否 | 101 |
主题ID。 |
Themes.N.ThemeLevel | Integer | 否 | 101 |
主题ID对应的主题层级。您可以通过ListTableTheme接口查询主题层级。 |
AppGuid | String | 否 | odps.test |
MaxCompute项目的ID,格式为odps.{projectName}。 |
Comment | String | 否 | 备注 |
备注信息。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | abcdef |
请求ID。 |
TaskInfo | Struct |
请求任务的信息。 请求任务提交成功后,会被分为多个子任务有序执行。当前子任务执行成功后,才会继续执行下一个子任务,所有子任务执行完毕,该请求任务结束。 如下情况,请求任务会终止,您需要根据错误码信息解决问题后重新发起请求任务:
|
|
Content | String | success |
当前子任务的执行状态详细信息。具体如下:
|
NextTaskId | String | abc1 |
即将执行的子任务ID。如果该字段为空,则表示所有子任务均已结束。您可以使用获取到的ID,从GetDDLJobStatus接口查询对应子任务的状态。 |
Status | String | success |
当前执行的子任务的状态信息。取值如下:
|
TaskId | String | abc |
当前执行的子任务ID。 |
示例
请求示例
http(s)://[Endpoint]/?Action=CreateTable
&Columns.1.ColumnName=columnName1
&Columns.1.ColumnType=string
&HasPart=0
&RegionId=cn-shanghai
&TableName=tableName1
&<公共请求参数>
正常返回示例
XML
格式
<TaskInfo>
<Status>success</Status>
<TaskId>abc</TaskId>
<Content>success</Content>
<NextTaskId>abc1</NextTaskId>
</TaskInfo>
<RequestId>abcdef</RequestId>
JSON
格式
{
"TaskInfo": {
"Status": "success",
"TaskId": "abc",
"Content": "success",
"NextTaskId": "abc1"
},
"RequestId": "abcdef"
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
500 | InternalError.System | An internal system error occurred. Try again later. | 系统内部错误,请稍后再试。 |
500 | InternalError.UserId.Missing | An internal system error occurred. Try again later. | 系统内部错误,请稍后再试。 |
403 | ResourceNotAuthorized.Api | You are not authorized to access the resources. | 您无法访问未取得授权的资源。 |
429 | Throttling.Api | The request for this resource has exceeded your available limit. | 对该资源的请求已超过您的可用上限。 |
429 | Throttling.Api.Risk | The request for this resource has exceeded your daily available limit. | 对该资源的请求已超过您的每日可用上限。 |
429 | Throttling.System | The DataWorks system is busy. Try again later. | DataWorks系统繁忙,请稍后再试。 |
429 | Throttling.User | Your request is too frequent. Try again later. | 您的请求过于频繁,请尝试放缓请求速度。 |
访问错误中心查看更多错误码。