sqlserver 创建对某个存储过程执行情况的跟踪
有时候需要抓取执行存储过程时某个参数的值,有时候程序调用存储过程执行后结果不太对,不确定是程序的问题还是存储过程的问题,需要单独执行存储过程看结果
即可用下面的方法
--================================================================================================ --创建对某个存储过程的执行情况的跟踪 --注意修改路径 和 object_id --================================================================================================ -- Create a Queue declare @rootPath NVARCHAR(200) = 'D:\TraceLog\' declare @path nvarchar(500) declare @rc int declare @TraceID int declare @maxfilesize bigint set @maxfilesize = 20 declare @intfilter int set @intfilter = object_id('dbo.sp_name')SET @path = @rootPath --+ CONVERT(VARCHAR(6), GETDATE(), 112) + '\' --年月的目录+ REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR, GETDATE(), 120), '-',''),' ',''),':',''); --select @path --D:\InOut\TraceLog\201709\20170927110926-- Please replace the text InsertFileNameHere, with an appropriate -- filename prefixed by a path, e.g., c:\MyFolder\MyTrace. The .trc extension -- will be appended to the filename automatically. If you are writing from -- remote server to local drive, please use UNC path and make sure server has -- write access to your network shareexec @rc = sp_trace_create @TraceID output, 0, @path, @maxfilesize, NULL if (@rc != 0) goto error-- Client side File and Table cannot be scripted-- Set the events declare @on bit set @on = 1 exec sp_trace_setevent @TraceID, 43, 1, @on exec sp_trace_setevent @TraceID, 43, 9, @on exec sp_trace_setevent @TraceID, 43, 2, @on exec sp_trace_setevent @TraceID, 43, 3, @on exec sp_trace_setevent @TraceID, 43, 6, @on exec sp_trace_setevent @TraceID, 43, 8, @on exec sp_trace_setevent @TraceID, 43, 10, @on exec sp_trace_setevent @TraceID, 43, 11, @on exec sp_trace_setevent @TraceID, 43, 12, @on exec sp_trace_setevent @TraceID, 43, 13, @on exec sp_trace_setevent @TraceID, 43, 14, @on exec sp_trace_setevent @TraceID, 43, 15, @on exec sp_trace_setevent @TraceID, 43, 22, @on exec sp_trace_setevent @TraceID, 43, 34, @on exec sp_trace_setevent @TraceID, 43, 35, @on-- Set the Filtersdeclare @bigintfilter bigint --set @intfilter = 1055342824 --select object_id('dbo.sp_name') exec sp_trace_setfilter @TraceID, 22, 0, 0, @intfilter-- Set the trace status to start exec sp_trace_setstatus @TraceID, 1-- display trace id for future references select TraceID=@TraceID goto finisherror: select ErrorCode=@rcfinish: go--================================================================================================ --查询跟踪到的结果 注意需要更改ID id= @TraceID --================================================================================================ declare @file nvarchar(256) select @file= path from sys.traces where id=@traceID and status=1 AND [path] IS NOT NULL SELECT * FROM ::fn_trace_gettable(@file, DEFAULT) a ORDER BY starttime desc--================================================================================================ --停止跟踪、关闭跟踪并删除跟踪定义。 注意修改 @TraceID --================================================================================================SELECT * FROM ::fn_trace_getinfo(default) -- First stop the trace. EXEC sp_trace_setstatus @TraceID, 0 -- Close and then delete its definition from SQL Server. EXEC sp_trace_setstatus @TraceID, 2
转载于:https://www.cnblogs.com/davidhou/p/7601329.html
sqlserver 创建对某个存储过程执行情况的跟踪相关推荐
- linux查看db2存储过程,DB2查看存储过程里SQL语句的执行情况
动态SQL可以用snapshot查看,存储过程里SQL语句的执行情况用event monitor查看. 但是event monitor没有记录SQL语句,而是记录了package id和Section ...
- sqlserver 创建存储过程及基本语法
本文记录sqlserver 创建存储过程及基本语法的讲解,附上作者实现功能的实例 背景:作者的task是需要两个数据库之间进行数据迁移,本可以用java程序来实现,后面觉得可以学习下存储过程,故采用这 ...
- SQL Server -- SQLserver 存储过程执行错误记录到表
SQLserver 存储过程执行错误记录到表 From: http://blog.csdn.net/leshami/article/details/51333650 对于在执行存储过程中碰到的一 ...
- 为什么sqlserver创建存储过程成功,却找不到这个存储过程呢
1.为什么sqlserver创建存储过程成功,却找不到这个存储过程呢? 需要点击工具上,创建存储过程,在那个里面去写存储过程,然后再刷新存储过程就会出现了 注意:如果是在新建查询上面,直接写sql创建 ...
- 6-C++中继承的权限有三种情况、创建和销毁的执行过程、多继承、菱形继承、多态的相关知识点
目录 1.继承的权限有三种 (1)public继承 (2)protected继承 (3)private继承 总结 2.创建和销毁的执行过程 (1)类中有成员对象情况 (2)继承时情况 (3)创建和销毁 ...
- SQLSERVER查看阻塞和CPU占用的会话,存储过程执行性能排行
SELECT * FROM sys.sysprocesses WHERE DB_NAME(dbid)='TEST'; --TEST数据库的进程数 SELECT cpu_count,scheduler_ ...
- sqlserver创建程序集
sqlserver创建程序集 适用对象: SQL ServerAzure SQL 数据库Azure SQL 数据仓库并行数据仓库 托管数据库对象(如存储过程或触发器)先经过编译,然后部署到称为程序集的 ...
- SQL SERVER 查询作业(Job)基本信息及执行情况
首先SqlServer的作业(job)是定期执行某个语句或者存储过程的任务,类似于windows里面的执行计划. 作业是在SqlServer代理里面,如下面的截图: 关于具体如何创建作业,网上资料 ...
- SQL SERVER 查询作业(Job)基本信息及执行情况的sql
首先SqlServer的作业(job)是定期执行某个语句或者存储过程的任务,类似于windows里面的执行计划. 作业是在SqlServer代理里面,如下面的截图: 关于具体如何创建作业,网上资料太多 ...
最新文章
- ModuleNotFoundError: No module named 'tools.nnwrap' pytorch 安装
- 数据结构实验之链表二:逆序建立链表
- VS2019使用说明
- 关于 Bootstrap的知识
- 使用CSS3属性aspect-ratio做横屏检测优化用户体验,附demo完整代码
- MySQL 数据库 like 语句通配符模糊查询小结
- np.linalg.norm()用法
- 堆排序c语言6,C语言:十种排序(七) - 堆排序
- 在Eclipse中使用Maven创建多模块的层级项目
- 怎样在两台计算机之间建立硬盘共享,如何让两台电脑硬盘共享在一起
- Allegro 导装配图
- 软件服务化:管理当先
- AD 如何查看元器件库中的3D模型?
- 不一般的Cover Letter
- 供应链,产业链,价值链及其之间的关系-商业模式名词解释12-14
- springboot中使用freemarker生成word循环输出图片(二维码)
- 阿里p9教你Java学到什么程度才能叫精通?
- 计算机组装win7实训报告,计算机基础1实验报告win7基本操作.docx
- np.cov np.var
- 什么样的品牌公关事件会引人注目?
热门文章
- oracle32位11g中文乱码,win7 64位系统 Oracle32bit + PL/SQL访问Orale服务,Oracle 11g的安装,中文乱码问题的解决...
- qt如何提前jpg文件里的缩略图_如何去捕获和编辑H5制作软件Hype中的海报图像
- python 打开targz文件_Python下使用pandas打开excel文件并进行处理
- Python 如何创建多维的list
- 计算机408考研专题(建议收藏)
- 地表最强的MySQL安装一键式安装,信不信你下完我就给你装好!附各种Mysql安装失败的解决办法(什么你安装失败了?快来看这个)
- [深度学习] Keras 如何使用fit和fit_generator
- verilog 不可综合语句 总结 汇总(Z)
- python join() 函数的用法
- sklearn的认识