
# 获取SQL执行记录 - ListStatementRecords
#### 功能介绍
查询SQL执行记录
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/DataArtsFabricEp/doc?api=ListStatementRecords)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-fabric/dataartsfabric_03_0014.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                                           | 访问级别 | 资源类型（\*为必须）  | 条件键                                                                                                                                                                                                                                                                                                                                                                                                                                        | 别名 | 依赖的授权项                                                                                                                                                                                                                                                                                                            |
  |:---|:---|:---|:---|:---|:---|
  | DataArtsFabric:workspace:listStatementRecords | List | workspace \* | - g:ResourceTag/\<tag-key\>   - g:EnterpriseProjectId    | -  | - DataArtsFabric:workspace:list  - DataArtsFabric:endpoint:show   |
  | DataArtsFabric:workspace:listStatementRecords | List | endpoint     | -                                                                                                                                                                                                                                                                                                                                                                                                                                          | -  | - DataArtsFabric:workspace:list  - DataArtsFabric:endpoint:show   |
     
  
 
#### URI
GET /v1/workspaces/{workspace_id}/statement-records
表1路径参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| workspace_id | 是    | String | **参数解释**：工作空间的ID。 **约束限制**：不涉及。 **取值范围**：长度为\[1,36\]的字母、数字、中划线(-)的组合。 **默认取值**：不涉及。 |
   
表2Query参数 
| 参数           | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| endpoint_id  | 否    | String  | **参数解释**：通过ID检索Endpoint的参数。 **约束限制**：不涉及。 **取值范围**：长度为\[1,36\]的字母、数字、中划线(-)的组合。 **默认取值**：不涉及。                                                                                |
| statement_id | 否    | String  | **参数解释**：statement id。 **约束限制**：不涉及。 **取值范围**：长度为\[1,64\]的字母、数字、中划线(-)和下划线(_)的组合。 **默认取值**：不涉及。                                                                              |
| limit        | 否    | Integer | **参数解释**：指定每一页返回的最大条目数。 **约束限制**：不涉及。 **取值范围**：\[1,100\]。 **默认取值**：10。                                                                                                       |
| offset       | 否    | Integer | **参数解释**：偏移量，表示从此偏移量开始查询。 **约束限制**：不涉及。 **取值范围**：\[0,1000000000\]。 **默认取值**：0。                                                                                               |
| source       | 否    | Integer | **参数解释**：执行sql来源，0 API，1 Console。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                  |
| start_time   | 否    | Integer | **参数解释**：查询开始时间。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                   |
| end_time     | 否    | Integer | **参数解释**：查询完成时间。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                   |
| status       | 否    | String  | **参数解释**：状态过滤，支持一种状态查询，默认查询所有。 **约束限制**：不涉及。 **取值范围**：可选值有： CANCELED、FAILED、SUCCESSFUL、RUNNING、SUBMITTED、ERROR **默认取值**：不涉及。 |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| X-Auth-Token | 否    | String | **参数解释**：租户token。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数      | 参数类型                                                                                        | 描述                                                                                                                                                                                                               |
|:---|:---|:---|
| total   | Integer                                                                                     | **参数解释**：符合条件的sql记录总数。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| records | Array of [StatementRecord] objects | sql历史记录。                                                                                                                                                                                                         |
   
 表5StatementRecord 
| 参数                | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| id                | String | Sql执行StatementID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| workspace_id      | String | **参数解释**：工作空间ID。 **约束限制**：不涉及。 **取值范围**：长度为\[1,36\]的英文字符、数字和中划线(-)的组合。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| endpoint_id       | String | **参数解释**：端点ID。 **约束限制**：不涉及。 **取值范围**：长度为\[1,36\]的字母、数字、中划线(-)的组合。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| database_name     | String | **参数解释**：数据库名称。 **约束限制**：不涉及。 **取值范围**：长度为\[1,256\]的字母、数字、下划线(_)的组合。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| statement_content | String | **参数解释**：sql脚本内容。 **约束限制**：不涉及。 **取值范围**：长度为\[1,1024\]的中文、字母、数字、中划线(-)、下划线(_)的组合。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| dpu_duration      | String | **参数解释**：dpu时。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| duration          | String | **参数解释**：执行时长。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| dpu_cost          | String | **参数解释**：费用。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| status            | String | **参数解释**：Sql执行状态。 - CANCELED：取消   - FAILED：失败   - SUCCESSFUL：成功   - RUNNING：运行中   - SUBMITTED：提交中   - ERROR：错误    **约束限制**：不涉及。 **取值范围**：CANCELED、FAILED、SUCCESSFUL、RUNNING、SUBMITTED、ERROR。 **默认取值**：不涉及。 |
| user_name         | String | **参数解释**：用户名称。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| create_time       | String | **参数解释**：创建时间。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| start_time        | String | **参数解释**：sql执行开始时间。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| finish_time       | String | **参数解释**：sql执行结束时间。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
   
**状态码：400**
表6响应Body参数 
| 参数           | 参数类型   | 描述                                                                                                                                                                                                                  |
|:---|:---|:---|
| error_code   | String | **参数解释**：错误码。 **约束限制**：不涉及。 **取值范围**：长度\[8,36\]。 **默认取值**：不涉及。      |
| error_msg    | String | **参数解释**：错误描述。 **约束限制**：不涉及。 **取值范围**：长度\[2,4096\]。 **默认取值**：不涉及。   |
| solution_msg | String | **参数解释**：解决方案描述。 **约束限制**：不涉及。 **取值范围**：长度\[2,4096\]。 **默认取值**：不涉及。 |
   
**状态码：401**
表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\]。 **默认取值**：不涉及。 |
   
#### 请求示例
查询sql执行历史记录，返回值为sql执行的sql，开始时间，结束时间等。
```
GET https://endpoint/v1/workspaces/{workspace_id}/statement-records?endpoint_id=
{ }
```
#### 响应示例
**状态码：200**
Sql执行历史记录响应体。
```
{
  "total" : 1,
  "records" : [ {
    "id" : "0b5633ba2b904511ad514346f4dxxxxx",
    "workspace_id" : "0b5633ba2b904511ad514346f4d23d4b",
    "endpoint_id" : "0b5633ba2b904511ad514346f4d23d4b",
    "database_name" : "db1",
    "statement_content" : "select 1",
    "dpu_duration" : 2.23,
    "dpu_cost" : 10.11,
    "duration" : 332,
    "status" : "SUCCESSFUL",
    "create_time" : "2023-05-30T12:24:30.401Z",
    "start_time" : "2023-05-30T12:24:30.401Z",
    "finish_time" : "2023-05-30T12:24:30.401Z"
  } ]
}
```
**状态码：400**
BadRequest
```
{
  "error_code" : "common.01000001",
  "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException"
}
```
**状态码：401**
Unauthorized
```
{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}
```
**状态码：403**
Forbidden
```
{
  "error" : {
    "code" : "403",
    "message" : "X-Auth-Token is invalid in the request",
    "title" : "Forbidden"
  },
  "error_code" : 403,
  "error_msg" : "X-Auth-Token is invalid in the request",
  "title" : "Forbidden"
}
```
**状态码：404**
NotFound
```
{
  "error_code" : "common.01000001",
  "error_msg" : "response status exception, code: 404"
}
```
**状态码：408**
Request Time-out
```
{
  "error_code" : "common.00000408",
  "error_msg" : "timeout exception occurred"
}
```
**状态码：500**
InternalServerError
```
{
  "error_code" : "common.00000500",
  "error_msg" : "internal error"
}
```
#### 状态码
| 状态码 | 描述                  |
|:---|:---|
| 200 | Sql执行历史记录响应体。       |
| 400 | BadRequest          |
| 401 | Unauthorized        |
| 403 | Forbidden           |
| 404 | NotFound            |
| 408 | Request Time-out    |
| 500 | InternalServerError |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-fabric/dataartsfabric_03_0028.html)。
