执行 SQL 并返回结果

执行提交的 SQL,并返回结果列和字符串行。此接口不生成 SQL。

POST https://api.moi.matrixorigin.cn/v5/catalog/nl2sql/run_sql

调用前准备

先确认 SQL 语句和目标数据库。准备可访问目标工作区的个人访问令牌、目标工作区 ID 和 SQL 语句。 该接口会执行提交的 SQL。提交前请确认语句的影响范围。

请求体

curl -X POST "https://api.moi.matrixorigin.cn/v5/catalog/nl2sql/run_sql" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "database_id": '"$DATABASE_ID"',
    "sql": "SELECT * FROM sales.orders LIMIT 10"
  }'

字段

类型

是否必填

说明

database_id

integer

否

当前接收但不用于选择数据库,不影响 SQL 执行。

sql

string

是

要执行的 SQL。

此接口直接执行 sql,不会使用模型生成或改写 SQL,也不限定为只读 SELECT。服务不会根据 database_id 切换数据库。

执行前确认 SQL 的权限和影响范围。跨库查询时,使用完整限定名,例如 sales.orders。

成功响应

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "columns": [
      "id",
      "amount"
    ],
    "rows": [
      [
        "1",
        "100"
      ]
    ]
  }
}

字段

类型

说明

code

string

成功时为 OK。

msg

string

成功时为 OK。

data.columns

string(字符串数组)

结果集列名。

data.rows

array 或 null

结果行,每个单元格为字符串。没有结果行时可能为 null。

错误响应

{
  "code": "ErrServer",
  "msg": "服务器内部错误",
  "data": null
}

字段

类型

说明

code

string

错误代码。

msg

string

错误信息。

data

null

错误响应中的附加数据。本示例为 null。

最后更新于