2

我需要想办法在 SQL Server Management Studio 2008 R2 的调试下运行。但是我有一些限制,我找不到解决方法:

  • 用户需要是特定模式的所有者。
  • 因此,用户不能拥有 SysAdmin 权限。这样做的原因是我们已经有许多存储过程,我们没有为 SQL 查询指定模式的名称。
  • 由于用户需要具有 SysAdmin 权限,因此这与第一个要求相冲突,因为您无法修改系统管理员的 DEFAULT_SCHEMA。

据我所知,在 SQL Server 2008 中进行调试的唯一方法是获得系统管理员权限,因为这就是 M$FT 设计软件的方式。有什么可能的解决方法?

我知道推荐的答案可能是改变我们编写 SP 的方式或考虑重新设计数据库设计,但遗憾的是,这不是一个选择。

请帮忙!

4

2 回答 2

0

取自MSDN:运行 Transact-SQL 调试器

我们建议在测试服务器而不是生产服务器上调试 Transact-SQL 代码,原因如下: 调试是一项高权限操作。因此,仅允许 sysadmin 固定服务器角色的成员在 SQL Server 中进行调试。在您调查多个 Transact-SQL 语句的操作时,调试会话通常会运行很长时间。会话获取的锁(例如更新锁)可能会保留很长时间,直到会话结束或事务提交或回滚。

如果您有疑虑,您可能想在 microsoft connect 站点上报告您的愿望: http ://connect.microsoft.com/sqlserver

于 2012-10-31T02:42:45.537 回答
0

通过在调试下运行,您是否意味着要使用 T-SQL 调试器交互式地调试存储过程?

如果您在运行此程序时遇到问题,并且您的目标是调试代码,您还可以使用 SQL Profiler 来准确观察存储过程中正在执行的内容。它当然不支持断点和启动/停止,但它可以让您观察正在执行的内容。

于 2012-10-31T01:57:52.070 回答