以下站点提到的sql_handle
是整个批处理文本的 MD5 哈希
但是,我无法手动计算它。从dm_exec_query_stats
我们判断下面的语句有以下几点sql_handle
。
SQL: (@P1 bigint)SELECT NID MimeTypeID, Name FROM DDocumentClass WHERE Type = @P1
SQL_HANDLE: 0x02000000CA17931BEF7F24A1787BF580EA365A56408697B30000000000000000000000000000000000000000
Run Code Online (Sandbox Code Playgroud)
以下 Ruby 脚本计算 MD5。
require 'digest'
sql1 = 'SELECT NID MimeTypeID, Name FROM DDocumentClass WHERE Type = @P1'
sql2 = '(@P1 bigint)SELECT NID MimeTypeID, Name FROM DDocumentClass WHERE Type = @P1'
puts Digest::MD5.hexdigest sql1
puts Digest::MD5.hexdigest sql2
Run Code Online (Sandbox Code Playgroud)
输出:
81707e73438befe82957c766dca86799
2652dc1d05e927ac7c5bfc985a3d1483
Run Code Online (Sandbox Code Playgroud)
必须有更多的算法。
我们可以计算出Oracle 的SQL_ID,我希望也能计算出SQL Server 的SQL_HANDLE。
44 字节sql_handle
具有以下组件(按顺序):
0x02000000
(2) 对于 SQL 计划 ( CACHESTORE_SQLCP
)0x03000000
(3) 对于对象计划 ( CACHESTORE_OBJCP
)0000000000000000000000000000000000000000
归档时间: |
|
查看次数: |
98 次 |
最近记录: |