SQL Server:执行哪些查询?

时间:2013-12-08 16:36:42

标签: sql sql-server sql-server-2008

我有一个客户端应用程序,通过localhost上的按钮向我显示SQL Server的用户信息,产品和价格等。

例如,当我点击节目费用时,它会获得一些信息。

我想了解哪个按钮执行哪个查询?

应用程序执行的监视器SQL语句是否有任何方式?

我试过

SELECT deqs.last_execution_time AS [Time], dest.TEXT AS [Query]
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
ORDER BY deqs.last_execution_time DESC

但此代码不显示应用程序的SQL语句。

感谢。

1 个答案:

答案 0 :(得分:1)

通常在使用Sql Server Profiler时,在运行跟踪时也可以获得其他数据库的结果 - 如果同一数据库服务器托管了其他应用程序使用的其他数据库。您可能希望跟踪您的应用程序正在使用的您的数据库中的内容。您可能不是这种情况如果您的数据库服务器中只有一个数据库 - 只需提及如果是这种情况。我发现这种方法非常有用。

我会将您的数据库设置为过滤器模板,并使用该模板创建跟踪。

这就是您创建模板的方式 - http://technet.microsoft.com/en-us/library/ms175070.aspx

这是您过滤以查看仅针对您的数据库执行的查询的方法: -

  

在跟踪模板属性>下“事件选择”选项卡>选择节目   所有专栏。现在在列过滤器下,您应该看到数据库   名称。输入Like部分的数据库名称,您应该看到   仅针对该数据库的跟踪。

您可以看到应用程序执行的Sql语句。我让剖析器运行在前面。请参阅下面的示例。

用户在以下窗体中输入名称“ashish1”: -

enter image description here

用户点击按钮时执行的代码: -

enter image description here

如果您运行了探查器,您可以看到应用程序发送的Sql语句: - enter image description here