Гость
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обработка ошибок в ASP/ADO (просто ASP, не .NET) / 3 сообщений из 3, страница 1 из 1
14.01.2003, 21:10
    #32090724
dalexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка ошибок в ASP/ADO (просто ASP, не .NET)
Уважаемый коллективный разум, помогите, пожалуйста, советом.

Из страницы ASP я вызываю свою хранимую процедуру в MS SQL.

Внутри процедуры есть insert, который иногда работает, а иногда дает ошибку (когда нарушается constraint на таблице). Сразу за insert стоит if @@Error <> 0 .... и дальше - восстановительные действия, и возвращается мой return code и выходной параметр. Если процедуру вызвать из Query Analyzer, она работает корректно, и даже в случае ошибки на insert'е возвращает код воврата и выходной параметр.

Если я вызываю процедуру из страницы ASP, и ошибки на insert'e не происходит, переменные внутри моей страницы благополучно получают код возврата и выходной параметр из процедуры. А вот если insert не выполняется, то код возврата и выходной параметр в страницу ASP не попадают. Переменные, приготовленные для них остаются неинициализированными, пустыми. Все операторы хранимой процедуры нормально выполняется до конца, ошибка обрабатывается там.

Такое ощущение, что ASP, почувствовав, что имела место ошибка в процедуре, даже и не трудится принять код возврата и выходные параметры.

Спасибо.

Вот фрагмент кода страницы ASP (правда, устаревший, без выходного параметра, только с кодом возврата):
. . .
On error resume next
. . .
DbCmd.CommandType=adCmdStoredProc
DbCmd.CommandText="NewUser"

DbCmd.Parameters.Append DbCmd.CreateParameter ("@RETURN_VALUE",adInteger,4)
DbCmd.Parameters.Append DbCmd.CreateParameter("@UserName",adVarChar,adParaminput,30,UserNameField)

DbCmd.Execute

Dim SPReturnCode
SpReturnCode=DbCmd.Parameters("@RETURN_VALUE").value
. . .
Response.Write "Return code=" & SpReturnCode
. . .
...
Рейтинг: 0 / 0
14.01.2003, 21:12
    #32090725
dalexeev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка ошибок в ASP/ADO (просто ASP, не .NET)
...
Рейтинг: 0 / 0
14.01.2003, 22:55
    #32090766
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка ошибок в ASP/ADO (просто ASP, не .NET)
SET NOCOUNT ON ?
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обработка ошибок в ASP/ADO (просто ASP, не .NET) / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]