Józ*_*ény 5 sql-server ssms debugging visual-studio-2015
我想在 TSQL 中调试。当我开始调试时,会弹出以下消息框。在 SSMS v17.2 中
然后我看到这个消息:
在 Microsoft Visual Studio 2015 服务器资源管理器中,同样的错误:
然后我看到这个消息:
谢谢你!
小智 8
调试是一种特权很高的操作。因此,只允许 sysadmin 固定服务器角色的成员在 SQL Server 中进行调试。
有关要求的详细信息,请参见如何:启用 Transact-SQL 调试。
还有几个 Connect 项目对此进行了讨论并列出了一些可能的情况:
虽然我理解对非系统管理员成员缺乏调试支持背后的挫败感,但在引擎中启用此类支持存在很多挑战。我们过去查看并没有找到一种干净的方法来隔离服务器中的调试体验而不影响其他进程。以下是一些关键问题:
- 调试一般需要更高的权限,这对于 SQL Server 或 OS 来说是正确的
- 例如,在 SQL Server 中调试 SQLCLR 代码会冻结服务器中的其他 SQLCLR 任务,严重影响性能
- 今天的调试端点是基于 DCOM 的,它有自己的限制
- 最后,我们不推荐在生产服务器中调试 T-SQL 代码。该场景主要用于开发目的,我将在下面描述一些替代方案
可以使用 Visual Studio 或 SQL Server Management Studio 或 SQL Server Data Tools (SSDT) 针对 SQL Server 的本地副本进行调试。在 SQL Server 2012 中,我们还有 SSDT 使用的 SQL Server Express LocalDB SKU。今天,LocalDB 中支持的表面区域/功能是 SQL Server 的一个子集,但我们的长期目标是启用 SQL Server 中支持的所有功能,包括 SQL Azure。所以我们的建议是使用本地开发环境来调试T-SQL逻辑。此外,您还可以获取克隆数据库(包括没有数据的统计信息)来重现查询计划相关问题。除了特定于环境的问题或 LocalDB 中缺少的功能之外,这适用于大多数情况。希望这可以帮助。
Umachandar,SQL 可编程性团队
最低安全要求是系统管理员。这是由 SQL 引擎安全性设计的。