sa_diagnostic_query 表属于 dbo 用户,其中存储查询的优化信息,尤其是优化查询时的上下文。此表中的一行表示针对查询调用的一次优化程序。优化时所捕获的计划被存储在这里。
此表中的某些值反映了数据库选项值。
此表有两个版本:sa_diagnostic_query 和 sa_tmp_diagnostic_query。
列名 | 列类型 | 说明 |
---|---|---|
logging_session_id | UNSIGNED INT | 在期间发生查询或请求的那个记录会话的 ID。 |
query_id | UNSIGNED BIGINT | 唯一地标识查询的编号。 |
statement_id | UNSIGNED BIGINT | 唯一地标识查询中的语句的编号。 |
user_object_id | UNSIGNED BIGINT | 在其下执行此查询的用户的对象 ID。如果查询是从过程运行的,则这将是过程所有者的用户 ID。 |
start_time | TIMESTAMP | 优化此查询时的时间。 |
cache_size_bytes | UNSIGNED BIGINT | 优化此查询时高速缓存的大小(以字节为单位)。 |
optimization_goal | TINYINT |
确定优化查询处理的意图:是迅速返回第一行,还是为最大程度地降低返回整个结果集的开销。此值反映了 optimization_goal 数据库选项的值。 |
optimization_level | TINYINT |
控制 SQL Anywhere 查询优化程序为查找 SQL 语句的访问计划而消耗的资源量。此值反映了 optimization_level 数据库选项的值。 |
user_estimates | TINYINT |
控制查询优化程序是考虑还是忽略查询谓语中的用户选择性估计。此值反映了 user_estimates 数据库选项的值。 |
optimization_workload | TINYINT |
确定优化查询处理的目标是针对更新和读取混合进行的负载还是针对主要基于读取的负载。此值反映了 optimization_workload 数据库选项的值。 |
available_requests | TINYINT | 内部使用,以计算查询内并行机制的级别。 |
active_requests | TINYINT | 内部使用,以计算查询内并行机制的级别。 |
max_tasks | TINYINT | 内部使用,以计算查询内并行机制的级别。 |
used_bypass | TINYINT | 是否使用了简单查询忽略。值 1 表示使用了忽略;值 0 表示查询已完全优化。 |
estimated_cost_ms | TINYINT | 预计开销(毫秒)。 |
plan_explain | LONG VARCHAR | 此查询的文本计划表示。 |
plan_xml | LONG VARCHAR | 查询的图形式计划表示(如果记录了一个查询)。 |
sql_rewritten | LONG VARCHAR | 应用优化后查询的文本。仅当启用优化记录后,此列中才会显示有值。 |
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |