Transact-SQL 参考

syscacheobjects

包含有关如何使用高速缓存的信息。syscacheobjects 属于 master 数据库。下表显示高速缓存查找键。

列名 数据类型 描述
bucketid int 存储桶 ID 值表示的范围从 0 到(目录大小 - 1)。目录大小为哈希表的大小。
cacheobjtype nvarchar(34) 高速缓存中的对象类型:

已编译计划
可执行计划
分析树
游标分析树
扩展存储过程

objtype nvarchar(16) 对象的类型:

存储过程
准备语句
特殊查询(从 isqlosql 作为语言事件提交的 Transact SQL,与远程过程调用相对)
ReplProc(复制过程)
触发器
视图
默认值
用户表
系统表
检查
规则

objid int 用于在高速缓存中查找对象的主要关键字之一。这是存储在 sysobjects 中的数据库对象(过程、视图、触发器等)的对象 ID。对于高速缓存对象(如特殊或准备 SQL),objid 为内部生成的值。
dbid smallint 在其中编译高速缓存对象的数据库 ID。
uid smallint 表示特殊查询计划和准备计划的编写者。-2 表示提交的批处理不依赖于隐性名称解析并能在不同的用户间共享。这是首选方法。任何其它值表示数据库中提交查询的用户 ID。
refcounts int 引用该高速缓存对象的其它高速缓存对象数。计数 1 为基数。
usecounts int 自开始以来使用该高速缓存对象的次数。
pagesused int 高速缓存对象消耗的内存页数。
setopts int 影响编译计划的 SET 选项设置。这些是高速缓存关键字的一部分。更改该列中的值表示用户已修改 SET 选项。这些选项包括:

ANSI_PADDING
FORCEPLAN
CONCAT_NULL_YIELDS_NULL
ANSI_WARNINGS
ANSI_NULLS
QUOTED_IDENTIFIER
ANSI_NULL_DFLT_ON
ANSI_NULL_DFLT_OFF

langid smallint 语言 ID。创建高速缓存对象的连接语言 ID。
dateformat smallint 创建高速缓存对象的连接日期格式。
status int 表示高速缓存对象是否是游标计划。目前只使用最小的有效位。
sqlbytes int 名称长度或提交的批处理长度。如果前 128 个字符相同,可用于区分两个名称或提交的批处理。
sql nvarchar(256) 过程名称或提交批处理的前 128 个字符。