c# - 在 C# 应用程序中模仿 SQL Server Profiler?

标签 c# sql-server trace smo sql-server-profiler

我想从我的 C# 应用程序在数据库服务器上创建跟踪,就像您在 SQL Server Profiler 中所做的那样。我发现存储过程(sys.sp_trace_create 等...)似乎不适用于我的 SQL 管理工作室。我想知道是否有人可以帮助编码,或者我应该从哪里开始做这件事?!

最佳答案

您是否希望它是实时的,就像 Profiler 本身一样?那很难做到。您基本上是在重新创建探查器。

如果这不是必需的,我建议只需调用您发现的 sp_trace_create 存储过程来启动服务器端跟踪,然后使用您的应用程序打开此跟踪生成的文件。

了解其工作原理的最简单方法是运行 SQL 事件探查器本身,设置所需的所有选项,然后单击“运行”,然后立即单击“停止”。然后转到"file"、“导出”、“脚本跟踪定义”,然后选择合适的版本。

这应该给你一个 TSQL 脚本,它将所有正确的部分放在一起,包括所有的跟踪事件、列等。

探查器的更多技术历史:This old SQLMag article有一些 Profiler 的历史,它在引入 SQL 7.0 时取代了一个名为“SQL Trace”的应用程序。

关于c# - 在 C# 应用程序中模仿 SQL Server Profiler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/299080/

相关文章:

sql - 我应该使用哪种锁定提示 (T-SQL)?

c# - 这两种事务处理方式有什么区别

sql - 优化多列的空检查方式

javascript - 追踪从哪里发出警报?

c# - 如何在winforms中拥有一个ListBox的多种颜色的项目?

c# - 如何在 Build EventS VS2013 中使用 RegAsm 注册 DLL

c# - 在运行时 : Explicit casting or 'as'/'is syntax 的性能方面有什么更好的

c# - 在 Azure 上托管时无法找到位于我的根项目文件夹中的文件

c++ - 显示行号对象被破坏

安卓 Binder 追踪