- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
■++P
■+
+
P
新淫存砖过程0D 修改加
编写存储过程脚本为G)卜
重命名 删除①)
刷新(?)
昨天晚上我找遍了互联网也没有发现关于 SQL2005存储过程和触发器的调试方法,研究
到凌晨2点多钟,终于找到方法了,不干独享,拿出来分享。如果要转载,请保留版权,谢 谢!
在SQL2000中,我们想要调试存储过程非常简单,只需要在对象浏览器中找到存储过
程,然后点击鼠标右键选择 执行(调试)”就可以弹出一个工具栏出来,进行调试。然而到
了 SQL2005中同样的操作却变成了生成一段 SQL语法,没有调试功能,如果使用了 Express
版本会更加郁闷,连 执行菜单都没有,如图所示: Express版本中,菜单中根本没有 执行”
功能。
一I可骗程性 L U存储过程 目」系圻存储过崔 田[
」函数
u数据库袖发器
」程序集
」类型 _J规则
冒U默认值
[一j Broker
出u安全性 安全性 服务器刑象
那么调试功能到什么地方去了呢?
别急,我找到了。原来微软把调试功能放在了 VS2005中了。注意是VS2005,不是SQL2005,
打开VS2005,选择工具、再选择连接到数据库”。选择正确的数据库名和表名,填入正确的 登陆信息就可以了,如图:
阿冈
输入信唄以连接到选定的数据遞』或单击更改选蒔另亠个数据 源和/或提供程序?
数据渡①:
Micrczoft SQL Servtr CSqlCli
更改?…
.■■- 」
服务器名(E):
CAKGON-TASKTOP1 \S9LEJ( PRESS
V
I刷新⑻j
登录到服务器
迄使用lindows身份脸证山〕 使用SQL Server身f芬脸证(Q)
在服务器资源管理 就可以看到写在数据库中的存储过程和触发器代码了,右击相应的存储 过程,便可以看见”单步执行调试 的字样如图所示:如果这段存储过程可以触发 ”触发器 中代 码,那么触发器的代码也是可以调试的。
我来举个例子调试一下。
1、 在数据中建立一个表 AllMo ney
列ID 类型INT ,该字段为自增字段,每插入一条数据就增加一个。
列 MyMoney 类型 Money
2、 在数据中建立一个表 LastID
列ALLMoneylD 类型为INT,该字段将通过触发起自动更新值, 当表AllMoney每插入一列
的时候,这个字段就自动更新为 AllMoney中的最大ID值。
3、 建立存储过程给 AllMoney添加数据:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE SP_ln sertMo ney
@MyMo ney AS MONEY
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO AllMo ney(My Mon ey) VALUES(@MyMo ney)
END
GO
4、在表AllMoney中建立触发器,更新表 LastID SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER INSERT_LastID
ON AllMo ney
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON
DECLARE @ID AS INT
SELECT @ID = MAX(ID) FROM AllMo ney
UPDATE LastID SET AllMo neylD=@ID
END
GO
当上面两个添加好后,然后再 VS中来调试。
首先打开触发器代码。并设置断点:
然后选择存储过程,点击右键选择单步调试存储过程。 在弹出的对话框填入正确的参数:
这是就可以按F10来进行调试了,当数据插入成功后,就会触发 ”触发器 代码,前面我们在
触发器中设置断点就会断下来了,如图:
dbv. . zpreSs. t i tii ) dbc. SF_Inse. . . xpres^. ciCi)
BEGIN
—SET HOCOlfKT ON to prevent extra result stts from
一 ini arfaring with SELECT stitemcuts.
SET BOCOUBT OJf
DECLARE 虹D AS THT
J EEUECT 虹乔 HlAXQin FKOM ALLMonl
― tnm电rt :far trigMEt here
丽5竝E L瓷tin SET肛耐「曲町1亦6工d|
END
⑥ l=_ 一 —
局部变呈
j名称 1值
* @ID 斗
还可以看见变量的值,很不错吧!
您可能关注的文档
最近下载
- 《水电解制氢工艺》课件.ppt VIP
- 第一单元习作家乡的风俗(素材积累)六年级语文下册单元作文(统编版).pdf VIP
- 1-6届汇总中南地区高校土木工程专业“结构力学竞赛”试题与答案.pdf VIP
- 旅游管理专业校企合作实践方案范文.docx VIP
- 2024上海市生物医药技术研究院公开招聘专技人员笔试备考题库及答案解析.docx VIP
- 2025届高考语文复习:现代文阅读之诗化小说+课件.pptx VIP
- 养老机构服务质量基本规范 GBT35796-2025(附服务流程).docx VIP
- 项目建筑垃圾排放台账.docx VIP
- GB 50794-2012 光伏发电站施工规范 高清晰版.docx VIP
- 中国航空学会-2024低空经济场景白皮书.docx
原创力文档


文档评论(0)