Главная страница
    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
4-23843
stainer a
2002-05-10 14:32
2002.07.08
Приостановка и блокировка компа в win2000-xp


1-23605
Андрусь
2002-06-25 12:30
2002.07.08
Движение формы и Resize


8-23684
ev
2002-03-03 14:12
2002.07.08
создать AVI


3-23491
Voland_s
2002-06-14 20:57
2002.07.08
Delphi и DTS


3-23495
Ola
2002-06-17 11:29
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский