Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];

Вниз

Генерация ошибки в MSSQL2000 и перехват ее в Delphi   Найти похожие ветки 

 
Alex-A   (2002-06-14 10:38) [0]

Есть хранимая процедура в которой генерируется сообщение об ошибке:

RAISERROR("Error",16,1) WITH NOWAIT

Делфийское приложение нормально перехватывает его

try
AdoStoredProc.ExecProc; // Вызов хранимой процедуры
except
on E:EOleException do ShowMessage(E.Message);
end;

НО!!!
Если перед RaisError выполняется обновление данных (UPDATE, INSERT - все равно), то ошибка в приложении не перехватывается.
Почему это может быть ?!


 
TSV   (2002-06-14 12:06) [1]

Попробуй опцию WITH SETERROR.


 
Alex-A   (2002-06-17 06:41) [2]

Не помогает WITH SETERROR :(
Может какой глюк в компонентах ADO?
запускаю процедуру в Query Analyzer-е все нормально - ошибка поднимается!


 
Fay   (2002-06-17 10:49) [3]

raiserror 50001 ""


 
Alex-A   (2002-06-17 13:27) [4]

2Fay
1. raiserror 50001 "" - не помогает тоже
2. мне нужно осмысленное (текстовое) сообщение об ошибке, а добавлять в sysmessages я не могу


 
Александр Спелицин   (2002-06-17 13:33) [5]

RaisError 50001 "Ваш текст ошибки".


 
Alex-A   (2002-06-17 13:58) [6]

Как послать текст ошибки я знаю.
Я про то что не всегда она в Delphi перехватывается.
(см. начало топика)


 
unfam   (2002-06-17 14:25) [7]

Все дело в том, что ошибка возвращается всегда, но в подавляющем большинстве случаев операции INSERT и UPDATE выполняются над набором записей и ошибка "перехватывается", если она произошла при обработке первой записи, если же ошибка случилась на, допустим, 12 из 345, то надо просто "пробежать" в цикле по коллекции Errors TADOConnection и вручную вывести сообщение об ошибке


 
Alex-A   (2002-06-17 16:02) [8]

2unfum
Вот спасибо!
Все получилось - перехватывается!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
14-23771
vads
2002-06-07 23:50
2002.07.08
ПЕРЕПИСЫВАЮ КОМПОНЕНТУ (TDBGrid) - очень надо ???


3-23512
oss
2002-06-18 00:28
2002.07.08
ADO sql


14-23731
Ura
2002-06-05 18:35
2002.07.08
PalmOS


14-23786
lipskiy
2002-06-08 03:30
2002.07.08
UBPFD - Бесплатная база готовых решений для Delphi


1-23567
DOG-ON-RUN
2002-06-27 02:09
2002.07.08
Есть задача - Помогите пожалуйста!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский