【问题标题】:Default SET NOCOUNT ON in SQL Server 2012SQL Server 2012 中的默认 SET NOCOUNT ON
【发布时间】:2015-01-07 17:06:26
【问题描述】:

问题

如何设置 SQL Server 2012 以像 SQL Server 2005 一样响应特定的 Web 应用程序。

背景

我们有一个在 IIS 7.5 ASP 2.0 中运行的旧应用程序,它在“启用 32 位应用程序”设置为 true 的应用程序池中运行。指向我们的 SQL Server 2005 数据库时,它工作正常。但是,当我们将其指向升级到 SQL Server 2012(未处于兼容模式)的数据库时,它会崩溃并显示错误消息:ADODB.Recordset error '800a0e78'。如果我将 SET NOCOUNT ON 添加到发生错误的存储过程中,我可以克服错误。

在我们旧的 SQL Server 2005 上使用数据库时,该应用程序在 IIS 7.5 ASP 2.0 中运行良好。

【问题讨论】:

  • 我们在使用 ASP 3.0 和 SQL Server 2012 没有这个问题,可能是与 ADO 版本不兼容,您使用的是什么版本?我们使用 2.8

标签: sql-server iis asp-classic


【解决方案1】:

您可以使用以下方法为数据库实例设置 NOCOUNT:

EXEC sys.sp_configure‘user options’,‘512’

但您应该意识到在实例级别而不是在每个存储过程中执行此操作的缺点,SSMS 将不再报告返回了多少行。

【讨论】:

    猜你喜欢
    • 2015-08-10
    • 1970-01-01
    • 1970-01-01
    • 2012-05-30
    • 2013-07-23
    • 2015-06-23
    • 1970-01-01
    • 2010-12-01
    • 2011-10-10
    相关资源
    最近更新 更多