在SQL Server 2008中debugging存储过程
有没有办法在SQL Server 2008上debugging存储过程?
我有权使用SQL Server Management Studio 2008和Visual Studio 2008(不确定是否提供此function)。
通常,我使用SQL分析器来查找传递给存储过程的参数,但希望能够逐步完成该过程以查看失败的位置。
这可能吗?
什么是最好的方法? (就快速查找错误的位置而言)
那么答案就是一直坐在我面前。
在SQL Server Management Studio 2008中,工具栏中有一个debuggingbutton。 在查询窗口中设置一个断点来逐步完成。
我一开始就没有意识到这个function,因为我没有考虑到INTO的存储过程,你可以轻松地做到这一点。
SSMS基本上做了什么FinnNK提到的MSDN演练,但自动。
太简单! 感谢您的帮助FinnNK。
编辑:我应该在那里添加一个步骤来find我的数据库上使用SQL Profiler的参数的存储过程调用。
是的,你可以(只要你至less有视觉工作室的专业版本),虽然它需要一点点设置,一旦你这样做,它与debugging代码没有太大的不同。 MSDN有一个基本的演练 。
- 是的,尽pipedebugging工作可能会非常棘手,特别是如果试图从自己的开发机器上debugging远程SQL服务器上的SQL时。
- 在第一种情况下,我build议通过直接在服务器上进行debugging,如果可能的话,首先得到这个工作。
- 使用具有sysadmin权限的帐户login到SQL Server,或者让您的DBA来执行此操作。
- 然后,对于您自己的Windows帐户,在SQL Server中创build一个“login”,如果它尚未存在:
- 右键单击帐户>属性 – 确保login名是“sysadmin”angular色的成员:
- (还要确保该账户是任何想要debugging脚本的数据库(例如存储过程)的“所有者”:
- 然后,使用您的Windows帐户直接login到SQL服务器。
- 使用Windows身份validationlogin到SQL服务器(使用您刚用来login到服务器的帐户)
- 现在在SQLpipe理工作室中“debugging”查询,根据需要设置断点。 你可以使用F11进入存储过程:
- 这是一个有用的debugging指南:
- 如果你需要远程debugging,那么一旦你有这个部分的工作,你可以尝试设置远程debugging:
远程debugging的一个要求是用于运行SSMS的Windows帐户是sysadminangular色的一部分。 请参阅此MSDN链接: http : //msdn.microsoft.com/en-us/library/cc646024%28v=sql.105%29.aspx
MSDN提供了debugging存储过程的简单方法。 请检查这个链接 –
如何:debugging存储过程