用数据列描述事件
跟踪运行时,SQL 跟踪使用跟踪输出中的数据列来描述返回的事件。
注意 |
---|
从 SQL Server 2005 开始,大于 1 GB 的跟踪列值将返回错误,并且会在跟踪输出中截断。 |
下表说明了 Microsoft SQL Server Profiler数据列(这些数据列与 SQL 跟踪使用的数据列相同),并指示默认情况下选择的列。
数据列 |
列号 |
说明 |
---|---|---|
ApplicationName1 |
10 |
与 SQL Server 实例建立连接的客户端应用程序的名称。此列由该应用程序传递的值填充,而不是由程序名填充的。 |
BigintData1 |
52 |
值 (bigint 数据类型),取决于跟踪中指定的事件类。 |
BigintData2 |
53 |
值 (bigint 数据类型),取决于跟踪中指定的事件类。 |
Binary Data |
2 |
依赖于跟踪中捕获的事件类的二进制值。 |
ClientProcessID1 |
9 |
由主机分配给正在运行客户端应用程序的进程的 ID。如果客户端提供了客户端进程 ID,则填充此数据列。 |
ColumnPermissions |
44 |
表示是否已设置了列权限。可以分析语句文本来确定各列所应用权限的情况。 |
CPU |
18 |
事件使用的 CPU 时间(毫秒)。 |
Database ID1 |
3 |
USE database_name 语句指定的数据库的 ID;如果未对给定实例执行 USE database_name 语句,则为默认数据库的 ID。如果在跟踪中捕获到 ServerName 数据列并且服务器可用,SQL Server Profiler将显示数据库的名称。若要确定数据库的值,请使用 DB_ID 函数。 |
DatabaseName |
35 |
正在运行用户语句的数据库的名称。 |
DBUserName1 |
40 |
客户端的 SQL Server 用户名。 |
Duration |
13 |
事件的持续时间(微秒)。
注意
在 SQL Server 2005 或更高版本中,服务器以微秒(百万分之一秒或 10-6 秒)为单位报告事件的持续时间,以毫秒(千分之一秒或 10-3 秒)为单位报告事件使用的 CPU 时间。在 SQL Server 2000 中,服务器以毫秒为单位报告持续时间和 CPU 时间。在 SQL Server 2005 或更高版本中,SQL Server Profiler图形用户界面默认以毫秒为单位显示“持续时间”列,但是当跟踪保存到文件或数据库表中时,将以微秒为单位写入“持续时间”列值。
|
EndTime |
15 |
事件的结束时间。对指示事件开始的事件类(例如 SQL:BatchStarting 或SP:Starting)将不填充此列。 |
Error |
31 |
给定事件的错误号。通常是 sysmessages 中存储的错误号。 |
EventClass1 |
27 |
捕获的事件类的类型。 |
EventSequence |
51 |
此事件的序列号。 |
EventSubClass1 |
21 |
事件子类的类型,提供有关每个事件类的详细信息。例如,Execution Warning 事件类的事件子类值代表执行警告的类型: 1 = 查询等待。查询执行之前必须等待资源;例如,内存。 2 = 查询超时。查询等待执行所需资源时超时。对于所有事件类,均不填充此数据列。 |
GUID |
54 |
依赖于跟踪中指定的事件类的 GUID 值。 |
FileName |
36 |
所修改的文件的逻辑名称。 |
Handle |
33 |
一个整数,ODBC、OLE DB 或 DB-Library 使用它来协调服务器的执行情况。 |
HostName1 |
8 |
正在运行客户端程序的计算机的名称。如果客户端提供了主机名,则填充此数据列。若要确定主机名,请使用 HOST_NAME 函数。 |
IndexID |
24 |
受事件影响的对象的索引 ID。若要确定对象的索引 ID,请参见 sysindexes 系统表的 indid 列。 |
IntegerData |
25 |
跟踪中捕获的与事件类对应的整数值。 |
IntegerData2 |
55 |
跟踪中捕获的与事件类对应的整数值。 |
IsSystem |
60 |
指示该事件发生在系统进程还是用户进程上: 1 = 系统 0 = 用户 |
LineNumber |
5 |
包含存在错误的行的行号。对于涉及 Transact-SQL 语句的事件,像 SP:StmtStarting,LineNumber 包含的是存储过程或批处理中语句的行号。 |
LinkedServerName |
45 |
链接服务器的名称。 |
LoginName |
11 |
用户的登录名(SQL Server 安全登录名或 Windows 登录凭据,格式为“域/用户名”)。 |
LoginSid1 |
41 |
已登录用户的安全标识符 (SID)。您可以在 master 数据库的 sys.server_principals 视图中找到此信息。服务器中的每个登录名都具有唯一的 ID。 |
MethodName |
47 |
OLEDB 方法的名称。 |
Mode |
32 |
一个整数,各种事件都使用它来描述事件要请求或已接收的状态。 |
NestLevel |
29 |
一个整数,表示 @@NESTLEVEL 返回的数据。 |
NTDomainName1 |
7 |
用户所属的 Microsoft Windows 域。 |
NTUserName1 |
6 |
Windows 用户名。 |
ObjectID |
22 |
系统分配的对象 ID。 |
ObjectID2 |
56 |
相关对象或实体(如果存在)的 ID。 |
ObjectName |
34 |
引用的对象名。 |
ObjectType2 |
28 |
表示事件中涉及的对象类型的值。该值对应于 sysobjects 中的类型列。 |
Offset |
61 |
语句在存储过程或批处理中的起始偏移量。 |
OwnerID |
58 |
仅限锁事件。拥有锁的对象的类型。 |
OwnerName |
37 |
对象所有者的数据库用户名。 |
ParentName |
59 |
该对象所在的架构的名称。 |
Permissions |
19 |
表示所检查的权限类型的整型值。值为: 1 = SELECT ALL 2 = UPDATE ALL 4 = REFERENCES ALL 8 = INSERT 16 = DELETE 32 = EXECUTE(仅过程) 4096 = SELECT ANY(至少一列) 8192 = UPDATE ANY 16384 = REFERENCES ANY |
ProviderName |
46 |
OLEDB 访问接口的名称。 |
Reads |
16 |
由服务器代表事件读取逻辑磁盘的次数。这些读取操作数包含在语句执行期间读取表和缓冲区的次数。 |
RequestID |
49 |
包含该语句的请求的 ID。 |
RoleName |
38 |
正在启用的应用程序角色名。 |
RowCounts |
48 |
批处理中的行数。 |
ServerName1 |
26 |
正在跟踪的 SQL Server 实例的名称。 |
SessionLoginName |
64 |
发起会话的用户的登录名。例如,如果您使用 Login1 连接到 SQL Server 并以 Login2 身份执行语句,则 SessionLoginName 将显示 Login1,而 LoginName 将显示 Login2。此数据列将同时显示 SQL Server 登录名和 Windows 登录名。 |
Severity |
20 |
异常错误事件的严重级别。 |
SourceDatabaseID |
62 |
存在该对象的源的数据库 ID。 |
SPID |
12 |
SQL Server 为客户端的相关进程分配的服务器进程 ID (SPID)。 |
SqlHandle |
63 |
基于即席查询文本或 SQL 对象的数据库和对象 ID 的 64 位哈希运算。可以将该值传递到 sys.dm_exec_sql_text() 以检索关联的 SQL 文本。 |
StartTime1 |
14 |
事件(如果有的话)的开始时间。 |
State |
30 |
错误状态代码。 |
Success |
23 |
表示事件是否成功。值包括: 1 = 成功。 0 = 失败 例如,1 表示权限检查成功,而 0 表示权限检查失败。 |
TargetLoginName |
42 |
如果是针对登录的操作(例如,添加新的登录),这是所针对登录的名称。 |
TargetLoginSid |
43 |
如果是针对登录的操作(例如,添加新的登录),这是所针对登录的 SID。 |
TargetUserName |
39 |
如果是针对某个数据库用户的操作(例如,授予用户权限),这是该用户的名称。 |
TextData |
1 |
依赖于跟踪中捕获的事件类的文本值。但是,如果跟踪参数化查询,则不以 TextData 列中的数据值显示变量。 |
Transaction ID |
4 |
系统为事务分配的 ID。 |
Type |
57 |
跟踪中捕获的与事件类对应的整数值。 |
Writes |
17 |
由服务器代表事件写入物理磁盘的次数。 |
XactSequence |
50 |
用于说明当前事务的标记。 |
1 默认情况下,对于所有事件,均填充这些数据列。
2 有关 ObjectType 数据列的详细信息,请参阅 ObjectType 跟踪事件列。