Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Исключения при работе с АДО [D5, Access]


RDA ©   (2002-11-29 09:16:00) 

Мастера подскажите пожалуйста как перехватить исключение при вставке записи с повторяющимся ключевім полем, или при редактировании записи и сменой ключевого поля на не уникальное. Прочитал в хелпе по Access, что это перехватываемая ошибка Jet, но как правильно описать это - не знаю. Код этой ошибки 3022.


try
Таблица.Post;
except
Видимо здесь нужно использовать как-то эту ошибку но не знаю как.
ShowMessage("Не уникальное название");
Abort;
end;


sniknik   (2002-11-29 10:35:00) [1]

Изменения не были успешно завершены из-за повторяющихся значений в индексе, ключевых полях или связях. (Ошибка 3022)
описаны в JETERR40.CHM (хелп от мс офиса 2000, если установлен)

только надо ли описывать досконально?
достаточно выдавать то что в сообщении ошибки, а вдруг это не изза уникального значения произошло?
к примеру (возврат из функции)
try
....
except
on E:Exception do Result:=E.Message;
end;


в твоем случае
try
Таблица.Post;
except
on E:Exception do begin
ShowMessage(E.Message);
Abort;
end;
end;


BoxTer   (2002-11-29 09:51:00) [2]

а просто свой исходник не пробовал, без ничего лишнего... ведь он перехватит ошибку и завоняет об ентом


Наверх

Титульная страница Поиск, карта сайта Написать письмо