sys.query_context_settings (Transact-SQL)

适用于: SQL Server 2016 (13.x) 及更高版本 Azure SQL 数据库Azure SQL 托管实例Azure Synapse Analytics

包含有关影响与查询关联的上下文设置的语义的信息。 SQL Server中提供了许多上下文设置,这些设置会影响查询语义, (定义查询) 的正确结果。 根据基础数据) ,在不同设置下编译的同一查询文本可能会生成不同的结果 (。

列名称 数据类型 说明
context_settings_id bigint 主密钥。 此值在用于查询的 Showplan XML 中公开。
set_options varbinary(8) 反映多个 SET 选项状态的位掩码。 有关详细信息,请参阅 sys.dm_exec_plan_attributes (Transact-SQL)
language_id smallint 语言的 ID。 有关详细信息,请参阅 sys.syslanguages (Transact-SQL)
date_format smallint 日期格式。 有关详细信息,请参阅 SET DATEFORMAT (Transact-SQL)
date_first tinyint 日期第一个值。 有关详细信息,请参阅 SET DATEFIRST (Transact-SQL).
status varbinary (2) 指示执行查询的查询类型或上下文的位掩码字段。
列值可以是多个标志的组合, (用十六进制) 表示:

0x0 - 常规查询 (无特定标志)

0x1 - 通过游标 API 存储过程之一执行的查询

0x2 - 查询通知

0x4 - 内部查询

0x8 - 不带通用参数化的自动参数化查询

0x10 - 游标提取刷新查询

0x20 - 游标更新请求中使用的查询

0x40 - 在游标自动提取 (打开游标时返回初始结果集)

0x80 - 加密查询

0x100 - 行级别安全谓词上下文中的查询
required_cursor_options int 用户指定的游标选项,例如游标类型。
acceptable_cursor_options int SQL Server游标选项可以隐式转换为 以支持语句的执行。
merge_action_type smallint 用作 MERGE 语句结果的触发器执行计划的类型。

0 表示非触发器计划、不作为 MERGE 语句结果执行的触发器计划,或作为仅指定 DELETE 操作的 MERGE 语句的结果执行的触发器计划。

1 指示作为 MERGE 语句结果运行的 INSERT 触发器计划。

2 指示作为 MERGE 语句的结果运行的 UPDATE 触发器计划。

3 指示作为包含相应 INSERTUPDATE 操作的 MERGE 语句的结果运行的 DELETE 触发器计划。



对于由级联操作运行的嵌套触发器,此值是导致级联的 MERGE 语句的操作。
default_schema_id int 默认架构的 ID,用于解析未完全限定的名称。
is_replication_specific bit 用于复制。
is_contained varbinary (1) 1 表示包含的数据库。

权限

需要拥有 VIEW DATABASE STATE 权限。

另请参阅

sys.database_query_store_options (Transact-SQL)
sys.query_store_plan (Transact-SQL)
sys.query_store_query (Transact-SQL)
sys.query_store_query_text (Transact-SQL)
sys.query_store_runtime_stats (Transact-SQL)
sys.query_store_wait_stats (Transact-SQL)
sys.query_store_runtime_stats_interval (Transact-SQL)
使用查询存储来监视性能
目录视图 (Transact-SQL)
查询存储存储过程 (Transact-SQL)
sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL)