sql服务器如何调试
打断点,然后选中你的存储过程,右键,调试,然后输入参数即可。
⑵ 如何在SQL Server 2008下轻松调试T-SQL语句和存储过程
今天突然有同事问起,如何在sqlserver中调试存储过程(我们公司使用的是sqlserver 2008 R2),猛地一看,和以前使用sqlserver 2000真的有很大的不同,我真晕了。
于是琢磨了一下。SQLSERVER 2005中不知因何去掉了很重要的DEBUGGER功能,要调试,必须要安装VS2005专业版或者更高版本。非常不方便。
还好,SQLSERVER 2008中这个很重要而且方便的功能又回来了。
不过,SQLSERVER 2008的调试功能和SQL2000的方法差别很大。SQL2000是在查询分析器中的对象浏览器中选中需要调试的存储过程,右键----调试---输入参数开始调试。
sqlserver2008中则完全不同,变成了必须要在SSMS中EXEC [PROCEDURE NAME] @VAR1,@VAR2,然后点绿色三角或者点菜单中的调试---启动调试。然后点工具栏的最右边的单步调试或者跳出等。下面的变量窗口和堆栈窗口等可以查看调试中变量等动态变化值。
sqlserver2008调试的要求和条件:如果在引擎所在的电脑或服务器上调试,则只需要SA或者WINDOWS用户登陆即可。如果是异地调试,则需要设置防火墙例外,增加SSMS和SQLSERVER.EXE为允许,增加135端口允许通过。
总之,SQL2008的调试比2000操作起来麻烦多了,要求也多了。刚开始感觉不如2000的好用,也可能是使用2000习惯了。习惯是可怕的,但是微软是在不断进步的...
⑶ sql2008 怎么调试触发器
在项目中,单击右键选择"添加"->"触发器",代码如下(validateyear.cs):
using
system;
using
system.data;
using
system.data.sqlclient;
using
microsoft.sqlserver.server;
public
partial
class
triggers
{
//
为目标输入现有表或视图并取消对特性行的注释
[microsoft.sqlserver.server.sqltrigger
(name="validateyear",
target="humanresources",
event="for
insert")]
public
static
void
validateyear()
{
//
用您的代码替换
sqlconnection
conn
=
new
sqlconnection("context
connection=true");
//定义查询
string
sql
=
"select
count(*)
"
+
"from
inserted
"
+
"where
year(modifieddate)<>2012";
sqlcommand
comm
=
new
sqlcommand(sql,
conn);
//打开连接
conn.open();
//获得行数
int
numbadrows
=
(int)comm.executescalar();
if
(numbadrows
>
0)
{
//get
the
sqlpipe
sqlpipe
pipe
=
sqlcontext.pipe;
//role
back
and
raise
an
error
comm.commandtext
=
"raiseerror('修改错误',11,1)";
//send
the
error
try
{
}
catch
{
}
system.transactions.transaction.current.rollback();
}
conn.close();
}
}
用于验证插入的数据是否合法,当插入表humanresources是,如果修改日期的年份不是2012将报错。
另外要注意的是要使用system.transactions.transaction.current.rollback(),必须添加system.transactions的引用
⑷ 如何调试触发器-数据库专栏,SQL Server
//-------------------------------------调试触发器//------------------------------------- 作者:四海为圈(原创) //------------------------------------- 1、创建存储过程以便触发触发器 3、选择单步运行存储过程 2、在触发事件的语句如:insert 、update 、delete语句时按f11 //------------------------------------- 本方法在sql server 2000+win2000 server 通过测试 本方法在vs.net 2003 + sql server 2000+win2000 server 通过测试 //-------------------------------------good转贴请注明来源 维护网络道德是每个网民的义务 //-------------------------------------实例教学:一、打开sql查询分析器 二、将以下sql语句复制到查询窗口并运行use pubscreate trigger trigger_update on authorsfor updateasbeginprint(update lastname=hoho)endcreate proc authors_procinsertasbeginupdate authors set au_lname=hoho where au_id=172-32-1176end三、在左边的对象浏览器中选择pubs->存储过程在authors_procinsert(如未出现请刷新pubs数据库)上右击弹出菜单选择“调试...”
⑸ PL/SQL Developer中如何调试oracle的存储过程
1.
打开PL/SQL
Developer如果
在机器上安装了PL/SQL
Developer的话,打开PL/SQL
Developer界面输入
用户名,密码和host名字,这个跟在程序中web.config中配置的完全相同,点击确定
找到
需要调试的存储过程所在的包(Package
bodies),如PACK_ACTIVITY,点击右键,在弹出菜单中选择[查看],得到包中的所有存储过程和他们的代码.
2.
添加debug信息为了
能够单步跟踪存储过程,需要为其所在的包添加debug信息,右键点击需要调试的包,在弹出菜单中选中[添加调试信息].这样
就为包体添加了调试信息。
3.
调
试存储过程现在
所有的准备工作都做好了,可以调试跟踪存储过程了。选择
需要调试的存储过程,点击右键,在弹出菜单中
选择[测试],进去测试窗口.测试窗口中有为了测试该存储过程自动所产生的代码,当然你也可以自己另外加入和修改代码,对于我们目前只是为了调试存储过程,
自动生成的代码已经足够了。接着按照如下的步骤进行调试。(1)添加存储过程所需要的参数,我们项目中的大多数存储过程都是需要参数
的,参数可以在测试窗口右下部分输入。如:GetPanNO_New需要一个输入参数v_employeeid,我们输入180,输出参数是mycursor,是查看结果的,不需要输入任何值。
(2)开始调试,点击[调试]菜单->[开始](或者按F9),就进去调试模式了,程序开始停在begin这一行.
(3)以后的调试过程跟我们熟悉的的调试过程就一样了:运行(Ctrl+R)单步
进入(Ctrl+N)单步
跳过(Ctrl+O)单步
退出(Ctrl+T)或者
点击debug工具条上的按扭:当按Ctrl+N进去存储过程的源代码中后
在这
个窗口中可以查看过程中的变量值和堆栈。
(4)调试运行完了后,可以查看结果如下(点击mycursor变量旁边的按钮).
4.
Tip
令人
比较郁闷的是我们项目中很多的存储过程都是一个SELECT语句,不管这个SELECT语句多么复杂(SELECT语句中有嵌套的子SELECT语句),它也只能作为一行代码,单步跟踪就没有什么意义了。
⑹ sql server 2008 怎么调试方法
打开【sql server Management Studio】窗口,选择【查看】-【已注册的服务器】命令,打开【已注册的服务器】窗口
依次展开【数据库引擎】-【本地服务器组】节点,查看当前以注册的服务器,右键单击服务器名称,在弹出的快捷菜单 中选择【属性】命令,打开【编辑服务器注册属性】窗口
在【常规】选项卡中的【服务器】名称下拉列表中选择或输入需要设置的服务器名称,在【身份验证】下拉表中选择身份验证方式,如果选择“sql server身份验证”还必须输入登录名和相应的密码。
单击【测试】按钮,验证设置是否正确。
5
测试正确无误后,单击【保存】按钮,即可完成身份验证方式的设置。
⑺ sql server2012 怎么调试
a.如果目标数据库存在存储过程,右击该存储过程-修改,打开存储过程,并在需要的地方设置断点。(如果没有自定义存储过程,则需要在Sql Server 2012数据库中创建存储过程,完成后在里面设置断点);
b.另外开启一个新建查询窗口,写入调用代码:例如 exec BillManageInputProc '主单1','0111111','0111112','121','legend','2014-09-24','001','2014-09-24','1','市场部','0' ,单击 调试按钮 启动存储过程的调试;
c.单击 F 11 进行逐句调试。