在指定Session中执行SQL - ExecuteAuraV2SqlStatement
功能介绍
在指定的Session下执行SQL语句。
用户可通过此接口执行SQL语句,输入为SQL语句、SQL Session id、绑定参数等信息,返回语句执行结果或statement id。
此接口支持异步和同步两种执行模式,由入参is_sync参数决定。如果是异步执行,配套使用查看SQL执行结果接口查询语句结果。
如果是同步执行,接口会等待一段时间接收结果,如果执行完毕会返回执行结果,如果没有执行完毕,会返回一个运行中状态,后续可以使用查看SQL执行结果接口查询语句结果。
调用方法
请参见如何调用API。
URI
POST /v2/workspaces/{workspace_id}/aura-sessions/statements
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| workspace_id | 是 | String | 参数解释:工作空间的ID。 约束限制:不涉及。 取值范围:长度为1~36个字符,支持大小写英文字母、数字、连字符。 默认取值:不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 参数解释:租户token。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| session_id | 是 | String | 参数解释:Session的ID。 取值范围:长度为1~36个字符,支持大小写英文字母、数字、连字符。 |
| statement | 是 | String | 参数解释:SQL statement信息。 约束限制:不涉及。 取值范围:0~10000000。 默认取值:不涉及。 |
| limit | 否 | Integer | 参数解释:limit限制。 约束限制:不涉及。 取值范围:1~2147483647。 默认取值:不涉及。 |
| bindings | 否 | Array<Array<String>> | 参数解释:参数绑定列表。 约束限制:不涉及。 取值范围:0~10000。 默认取值:不涉及。 |
| is_sync | 否 | Boolean | 参数解释:同步执行或异步执行。 约束限制:不涉及。 取值范围: 默认取值:不涉及。 |
| resultset_fetch_mode | 否 | String | 参数解释:获取结果集的方式。 约束限制:不涉及。 取值范围: 默认取值:DEFAULT。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| - | String | 参数解释:执行SQL的响应信息。 取值范围: 异步或同步执行超时执行结果: StatementResponse 同步执行正常返回结果: StatementResponse StatementResult StatementResultSet RowType |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释:错误码。 取值范围:长度为8~36个字符。 |
| error_msg | String | 参数解释:错误描述。 取值范围:长度为2~4096个字符。 |
| solution_msg | String | 参数解释:解决方案描述。 取值范围:长度为2~4096个字符。 |
状态码:401
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释:错误码。 取值范围:长度为8~36个字符。 |
| error_msg | String | 参数解释:错误描述。 取值范围:长度为2~4096个字符。 |
| solution_msg | String | 参数解释:解决方案描述。 取值范围:长度为2~4096个字符。 |
状态码:403
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释:错误码。 取值范围:长度为8~36个字符。 |
| error_msg | String | 参数解释:错误描述。 取值范围:长度为2~4096个字符。 |
| solution_msg | String | 参数解释:解决方案描述。 取值范围:长度为2~4096个字符。 |
状态码:404
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释:错误码。 取值范围:长度为8~36个字符。 |
| error_msg | String | 参数解释:错误描述。 取值范围:长度为2~4096个字符。 |
| solution_msg | String | 参数解释:解决方案描述。 取值范围:长度为2~4096个字符。 |
状态码:408
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释:错误码。 取值范围:长度为8~36个字符。 |
| error_msg | String | 参数解释:错误描述。 取值范围:长度为2~4096个字符。 |
| solution_msg | String | 参数解释:解决方案描述。 取值范围:长度为2~4096个字符。 |
状态码:500
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释:错误码。 取值范围:长度为8~36个字符。 |
| error_msg | String | 参数解释:错误描述。 取值范围:长度为2~4096个字符。 |
| solution_msg | String | 参数解释:解决方案描述。 取值范围:长度为2~4096个字符。 |
请求示例
在指定的Session下执行SQL语句。
POST /v2/workspaces/{workspace_id}/aura-sessions/statements
{
"statement" : "select * from aaa",
"limit" : 100,
"session_id" : "string",
"bindings" : [ [ "string" ] ],
"is_maintain_statement" : false,
"resultset_fetch_mode" : "DEFAULT",
"is_sync" : true
} 响应示例
状态码:200
请求成功。
{
"status" : 0,
"session_id" : "6399466e-8908-4c9d-8399-48479c8b06f7",
"statement_id" : "49131d25-1824-4f29-860c-832bdd19dfd3",
"results" : [ {
"status" : "PGRES_COMMAND_OK",
"statement_id" : "49131d25-1824-4f29-860c-832bdd19dfd3",
"num_rows" : 1,
"row_count" : 1,
"page_count" : 1,
"page_no" : 1,
"err_code" : "0",
"sql_state" : "0",
"message" : "CREATE SCHEMA",
"result_set" : { }
} ]
} 状态码:400
非法请求。
{
"error_code" : "AIDataLake.00092031",
"error_msg" : "Invalid parameter name",
"solution_msg" : "Please enter parameters in the correct format."
} 状态码:401
未经授权。
{
"error_code" : "APIG.1002",
"error_msg" : "Incorrect token or token resolution failed"
} 状态码:403
请求被拒绝访问。
{
"error_code" : "AIDataLake.00090030",
"error_msg" : "Unauthorized requests.",
"solution_msg" : "Check permissions and retry after authorization."
} 状态码:404
所请求的资源不存在。
{
"error_code" : "AIDataLake.00090009",
"error_msg" : "The resource not exists.",
"solution_msg" : "Please try to use correct info."
} 状态码:408
请求超时。
{
"error_code" : "common.00000408",
"error_msg" : "timeout exception occurred"
} 状态码:500
服务器内部错误。
{
"error_code" : "common.00000500",
"error_msg" : "internal error"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 请求成功。 |
| 400 | 非法请求。 |
| 401 | 未经授权。 |
| 403 | 请求被拒绝访问。 |
| 404 | 所请求的资源不存在。 |
| 408 | 请求超时。 |
| 500 | 服务器内部错误。 |