更新时间:2026-01-06 GMT+08:00
查询Session状态并取消查询
本示例演示查询Session状态、取消一个查询的操作。
前提条件
- Fabric SQL服务正常运行。
- 用户提供有效的IAM认证凭据。
- 用户已开通Fabric SQL服务并拥有访问OBS服务权限。
示例代码
from fabricsql.SQLClient import FabricSQLClient from fabricsql.SQLRequests import SessionRequest, QueryRequest # 本示例程序演示查询Session状态、取消查询的功能 # 如果是临时AK/SK,还需要提供SecurityToken ak = 'xxxxxxxxxx' sk = 'xxxxxxxxxx' fabric_endpoint = 'xxxxxxxxxx' endpoint_id = 'xxxxxxxxxx' workspaceId = 'xxxxxxxxxx' instance_id = 'xxxxxxxxxx' catalog = 'xxxxxxxxxx' # 本示例代码演示用户创建一个Session,并使用该Session下发一个多条语句请求,然后获取每个语句的结果集 # 创建一个FabricSQL客户端 client = FabricSQLClient(fabric_endpoint, ak, sk) # 创建一个Session请求,填入必要信息 s = SessionRequest() s.endpoint_id = endpoint_id s.instance_id = instance_id s.catalog = catalog # 创建一个Session,获取session_id session = client.createSession(workspaceId, s) session_id = session.session_id # 查询Session状态 # Session状态为一个字符串 status = client.getSessionStatus(workspaceId, session_id) print(status) # 创建一个SQL请求 q = QueryRequest() q.statement = "select * from table1;select * from table2;select * from table3" q.session_id = session_id # 下发请求,返回一个请求响应 query_resp = client.executeQuery(workspaceId, q) # 取消SQL查询,该接口执行成功会返回空返回体 client.cancelExecute(workspaceId, query_resp) # 关闭一个Session client.closeSession(workspaceId, session_id)
父主题: 示例代码