文档首页/ 智能数据湖 AIDataLake/ API参考/ Aura API/ AuraJobV2作业管理/ 在指定Session中执行SQL - ExecuteAuraV2SqlStatement
更新时间:2026-07-13 GMT+08:00
分享

在指定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

表1 路径参数

参数

是否必选

参数类型

描述

workspace_id

String

参数解释:工作空间的ID。

约束限制:不涉及。

取值范围:长度为1~36个字符,支持大小写英文字母、数字、连字符。

默认取值:不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:租户token。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

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

参数解释:同步执行或异步执行。

约束限制:不涉及。

取值范围

  • true:同步。

  • false:异步。

默认取值:不涉及。

resultset_fetch_mode

String

参数解释:获取结果集的方式。

约束限制:不涉及。

取值范围

  • DEFAULT:直接返回结果集。

  • READ_OBS:返回结果集在桶上的路径,而不是直接返回结果集。

默认取值:DEFAULT。

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

-

String

参数解释:执行SQL的响应信息。

取值范围

异步或同步执行超时执行结果:

StatementResponse

  • status(Integer):请求整体执行状态。

    • 0:成功。

    • -1:失败。

    • 1: 执行中。

    • 2:执行完成但无结果集。

    • 3:排队等待中。

    • 4:语句未正常执行。

  • session_id(String,UUID):当前执行会话唯一标识。

  • statement_id(String,UUID):本次语句执行唯一标识。

同步执行正常返回结果:

StatementResponse

  • status(Integer):请求整体执行状态

    • 0:成功。

    • -1:失败。

    • 1: 执行中。

    • 2:执行完成但无结果集。

    • 3:排队等待中。

    • 4:语句未正常执行。

  • session_id(String,UUID):当前执行会话唯一标识。

  • statement_id(String,UUID):本次语句执行唯一标识。

  • results(Array of StatementResult objects):每条SQL执行结果。

StatementResult

  • status(String):SQL执行状态。

    • PGRES_TUPLES_OK:查询成功并含结果集。

    • PGRES_COMMAND_OK:执行成功无结果。

    • PGRES_FATAL_ERROR:执行失败。

  • statement_id(String):语句ID。

  • num_rows(Integer):查询结果总行数。

  • row_count(Integer):当前页实际返回行数。

  • page_no(Integer):当前页码。

  • page_count(Integer): 总页数。

  • err_code(String):错误码,0表示无错误,其他数值参见错误信息。

  • sql_state(String):SQL状态码。

  • message(String):执行信息或错误详情。

  • result_set(Object,type: StatementResultSet):仅查询成功时含有效数据,否则为空结构。

StatementResultSet

  • columns(Array of RowType objects):列元数据列表。

  • rows(Array of String arrays):实际数据行,每行顺序与columns对应。

RowType

  • name(String):列名。

  • table_id(Integer):表的ID。

  • column_id(Integer):列的ID。

  • format(Integer):格式。

  • type(Integer):PG类型OID。

  • size(Integer):大小。

  • type_mod(Integer):typemod。

状态码:400

表5 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:错误码。

取值范围:长度为8~36个字符。

error_msg

String

参数解释:错误描述。

取值范围:长度为2~4096个字符。

solution_msg

String

参数解释:解决方案描述。

取值范围:长度为2~4096个字符。

状态码:401

表6 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:错误码。

取值范围:长度为8~36个字符。

error_msg

String

参数解释:错误描述。

取值范围:长度为2~4096个字符。

solution_msg

String

参数解释:解决方案描述。

取值范围:长度为2~4096个字符。

状态码:403

表7 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:错误码。

取值范围:长度为8~36个字符。

error_msg

String

参数解释:错误描述。

取值范围:长度为2~4096个字符。

solution_msg

String

参数解释:解决方案描述。

取值范围:长度为2~4096个字符。

状态码:404

表8 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:错误码。

取值范围:长度为8~36个字符。

error_msg

String

参数解释:错误描述。

取值范围:长度为2~4096个字符。

solution_msg

String

参数解释:解决方案描述。

取值范围:长度为2~4096个字符。

状态码:408

表9 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:错误码。

取值范围:长度为8~36个字符。

error_msg

String

参数解释:错误描述。

取值范围:长度为2~4096个字符。

solution_msg

String

参数解释:解决方案描述。

取值范围:长度为2~4096个字符。

状态码:500

表10 响应Body参数

参数

参数类型

描述

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

服务器内部错误。

相关文档