2012-01-16 1 views
4

Я использую ASP 3.0 для IIS 7 и SQL Server 2008 в качестве своих dbms. У меня есть хранимая процедура, закодированная в SQL Server. У меня есть некоторые инструкции «Печать», а также оператор select, который выдает набор записей после выполнения процедуры. я могу получить набор записей с помощьюИзвлеките сообщения базы данных (например, выходы «Печать», но не сообщения об ошибках) в ADO

Set Recordset = Server.CreateObject ("ADODB.Recordset")

recordSet.Open "Выполнить my_procedure", DBConn

Что я хочу здесь нужно получить выходные данные операторов «Печать», которые я выполняю в хранимой процедуре. Пожалуйста, помогите. Заранее спасибо!

ответ

4

В ADO, выход из PRINT заявления заполняется в Errors коллекции, так что вы просто должны перебрать эту коллекцию:

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

Спасибо, Черан! Это работает. – Rachcha

+0

Это не работает, когда я использую драйвер ODBC ('DRIVER = {SQL Server}'). –

1

Вы можете попытаться использовать событие SqlInfoMessage, чтобы уловить оператор печати из объекта соединения.

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

Вы можете получить намного больше информации по этой ссылке, http://www.dotnetcurry.com/ShowArticle.aspx?ID=344

Надеется, что это помогает.

+0

Этого вопрос о классическом ASP, не ASP.NET. –