2017-05-04 31 views

回答

0

在会话向导中,选择SQL语句的起点和全球领域中,选择SQL文本像下面

enter image description here

,并在最后一个屏幕,你可以过滤如图所示在下面的截图

enter image description here

+0

我需要使用%ord_id = 4%吗? –

+0

你是说它适用于%%,我不知道,我测试了很久回 – TheGameiswar

+0

你知道我怎么能找到同样失败的查询语法ord_id = 4?现在我得到所有没有失败的查询... –

1

你可以使用此查询,如果你写的读取扩展事件

SELECT CONVERT(XML, event_data) XMLEventData FROM sys.fn_xe_file_target_read_file(N'PathForTheFile\*.xel', NULL, NULL, NULL) 

*这意味着读取所有文件,如果你知道去哪里找,你可以写你的文件名称,而不是*

在此之后,以方便为了使用下面的查询,您需要修改查询以满足您的需求。

SELECT    

    xexml.value('(./action[@name="username"]/value)[1]', 'varchar(400)') as UserName     

    ,xexml.value('(./action[@name="client_hostname"]/value)[1]', 'varchar(400)') as Client_Hostname 

    ,xexml.value('(./action[@name="collect_system_time"]/value)[1]', 'datetime') as ProcessTime     

    ,xexml.value('(./data[@name="statement"]/value)[1]', 'nvarchar(4000)') as SQLStatement     

FROM     
(    
SELECT CONVERT(XML, event_data) XMLEventData FROM sys.fn_xe_file_target_read_file(N'PathOfYourFiles\*.xel', NULL, NULL, NULL) f 
) AS EventTable     

CROSS APPLY XMLEventData.nodes('/event') n (xexml)     
WHERE cast(xexml.value('(./action[@name="collect_system_time"]/value)[1]', 'datetime')as time) between '12:00:00' and '15:00:00' 
AND xexml.value('(./data[@name="statement"]/value)[1]', 'nvarchar(4000)') like '%ord_id=4%' 
相关问题