【问题标题】:Retrieve database messages (e.g., "Print" statement outputs but not error messages) in ADO在 ADO 中检索数据库消息(例如,“打印”语句输出但不是错误消息)
【发布时间】:2012-01-16 05:57:30
【问题描述】:

我在 IIS 7 和 SQL Server 2008 上使用 ASP 3.0 作为我的 dbms。 我有一个用 SQL Server 编码的存储过程。我有一些“打印”语句,还有一个 select 语句,它在执行过程后抛出一个记录集。 我可以使用检索记录集

设置recordSet = Server.CreateObject("ADODB.RecordSet")

recordSet.Open "Execute my_procedure", dbConn

我希望在这里做的是检索我在存储过程中执行的“打印”语句的输出。 请帮忙。提前致谢!

【问题讨论】:

    标签: sql-server-2008 asp-classic ado


    【解决方案1】:

    在 ADO 中,PRINT 语句的输出填充到 Errors 集合中,因此您只需遍历该集合即可:

    Dim e
    For Each e In dbConn.Errors
        Response.Write e.Description
    Next
    

    【讨论】:

    • 这在我使用 ODBC 驱动程序 (DRIVER={SQL Server}) 时不起作用。
    【解决方案2】:

    您可以尝试使用 SqlInfoMessage 事件从连接对象中捕获打印语句。

    SQLConnection.InfoMessage += delegate(object sender, SqlInfoMessageEventArgs e) 
    {                                    
       string printresponse = e.Message;                                    
    };
    

    您可以从此链接获得更多详细信息, http://www.dotnetcurry.com/ShowArticle.aspx?ID=344

    希望这会有所帮助。

    【讨论】:

    • 这个问题是关于经典 ASP,而不是 ASP.NET。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 2019-02-14
    • 1970-01-01
    • 2021-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多