在SQL中监控存储过程,我们可以使用SQL Server Profiler。
关于SQL Server Profiler 的相关用法,参考下面的文档:
http://msdn.microsoft.com/zh-cn/library/ms181091.aspx
http://www.mssqltips.com/sqlservertip/3259/several-methods-to-collect-sql-server-stored-procere-execution-history/
2. SQL存储过程如何调用存储过程
1、首先先创建一个存储过程,代码如图,存储过程主要的功能是为表JingYan插入新的数据。
3. [原]MS SQL Server事件探查器如何跟踪存储过程
一、创建模板 1、打开SQL事件探查器 2、文件-新建-跟踪模板 3、单击事件选项卡,在可用事件类中选择存储过程,点添加,添加到选定的事件类 4、单击数剧列,将取消选定中的数据中TextData添加到选定的数据列表,如果想显示更多信息,按照下图添加列即可 5、点保存,输入名称(例如:跟踪存储过程模板),保存! 二、跟踪存储过程 1、打开SQL事件探查器 2、文件-新建-跟踪 在连接到 SQL Server中,点确定,接着出现了跟踪属性 3、在常规选项卡中,模板名中选择在第一步骤中保存的模板名称(例如:跟踪存储过程模板),运行 三、运行存储过程 打开SQL查询分析器,在其中执行存储过程 exec proGetInfo '123456',此时事件探查器中,已经显示了proGetInfo中执行的各项语句
4. SQL Server如何查看一个数据库里的存储过程
仔细研究后在csdn上找到了解决该问题的办法帖出来给大家共享一下
大致方法是利用传递长字符串的形式向存储过程传递一个长字符串。由于sqlserver没有
splite函数
所以必须自己定义一个splite函数来进行处理
自定义一个函数
create
function
f_splitstr(@sourcesql
varchar(8000),@strseprate
varchar(10))
returns
@temp
table(f1
varchar(100))asbegindeclare
@i
int
set
@sourcesql=rtrim(ltrim(@sourcesql))
set
@i=charindex(@strseprate,@sourcesql)while
@i=1begininsert
@temp
values(left(@sourcesql,@i-1))
set
@sourcesql=substring(@sourcesql,@i+1,len(@sourcesql)-@i)
set
@i=charindex(@strseprate,@sourcesql)endif
@sourcesql<''
insert
@temp
values(@sourcesql)returnend-执行select
*
from
dbo.f_splitstr('1,2,3,4',',')
注:'1,2,3,4'即你所传递的字符串
同样你可以通过
select
cunt(*)
from
dbo.f_splitstr('1,2,3,4',',')
获得该字符串数组的长度
如果要删除该函数使用--删除函数drop
function
fsplit
5. SQL实现存储过程
提供4中方案:
1、可以用sql作业的方式来定时执行。
2、编写服务,定时执行存储过程。
3、利用ado.net的方式,timmer定时执行来实现。
4、如果是每天的某个时间段来执行的话,可以配置windows计划任务来执行程序。程序中执行你的存储过程。
6. 如何使用sql语句查看存储过程
利用数据字典视图查看当前用户所有存储过程及其代码
select name,text from user_source where type='PROCEDURE'.
7. sql server 跟踪 怎么跟踪存储过程执行的sql
你可以通过SQL Server Profiler去跟踪数据库在执行哪一个存储过程,然后去对应的数据库中找到这个存储过程,打开看里面的命令
8. sql存储过程
一、简单的储存过程:
1、创建一个存储过程
create procere GetUsers()
begin
select * from user;
end;12345
2、调用存储过程
call GetUsers();12
3、删除存储过程
drop procere if exists GetUsers;
二、带参数的存储过程
1、MySql 支持 IN (传递给存储过程) , OUT (从存储过程传出) 和 INOUT (对存储过程传入和传出) 类型的参数 , 存储过程的代码位于 BEGIN 和 END 语句内 , 它们是一系列 SQL 语句 , 用来检索值 , 然后保存到相应的变量 (通过指定INTO关键字) ;
2、下面的存储过程接受三个参数 , 分别用于获取用户表的最小 , 平均 , 最大分数 , 每个参数必须具有指定的类型 , 这里使用十进制值(decimal(8,2)) , 关键字 OUT 指出相应的参数用来从存储过程传出
create procere GetScores(
out minScore decimal(8,2),
out avgScore decimal(8,2),
out maxScore decimal(8,2)
)
begin
select min(score) into minScore from user;
select avg(score) into avgScore from user;
select max(score) into maxScore from user;
end;1234567891011
3、调用此存储过程 , 必须指定3个变量名(所有 MySql 变量都必须以 @ 开始) , 如下所示 :
call GetScores(@minScore, @avgScore, @maxScore);12
4、该调用并没有任何输出 , 只是把调用的结果赋给了调用时传入的变量 @minScore, @avgScore, @maxScore , 然后即可调用显示该变量的值 :
select @minScore, @avgScore, @maxScore;
5、使用 IN 参数 , 输入一个用户 id , 返回该用户的名字 :
create procere GetNameByID(
in userID int,
out userName varchar(200)
)
begin
select name from user
where id = userID
into userName;
end;12345678910
6、调用存储过程 :
call GetNameByID(1, @userName);
select @userName;123
参考资料
SQL存储过程使用介绍.csdn博客[引用时间2017-12-31]
9. 如何使用SQL语句查看存储过程的内容
有时候你没有办法使用图形界面的管理器连接SQL 服务器,这个时候如果你想查看一个存 储过程的内容就只能依靠SQL 语句了。 系统提供了一个存储过程可以查看 rule,stored procere, user-defined function, trigger, 或者 view。Syntaxsp_helptext @objname = 'name' sp_helptext '存储过程名称'
10. MS SQL Server事件探查器如何跟踪存储过程
一、创建模板:
①打开SQL事件探查器。
②文件-新建-跟踪模板。
③单击事件选项卡,在可用事件类中选择存储过程,点添加,添加到选定的事件类。
④单击数剧列,将取消选定中的数据中TextData添加到选定的数据列表,如果想显示更多信息,按照下图添加列即可。
⑤点保存,输入名称(例如:跟踪存储过程模板),保存。
二、跟踪存储过程:
①打开SQL事件探查器
②文件-新建-跟踪,在连接到 SQL Server中,点确定,接着出现了跟踪属性
③在常规选项卡中,模板名中选择在第一步骤中保存的模板名称(例如:跟踪存储过程模板),运行
三、运行存储过程:
打开SQL查询分析器,在其中执行存储过程exec proGetInfo '123456',此时事件探查器中,已经显示了proGetInfo中执行的各项语句。