Курсовые работы, лабораторные, доклады для студентов
можете скачать и поделиться с другими,
если не жалко.

 
на правах рекламы


Обработка ошибок в Interbase и в приложении БД


Вопрос 37. Обработка ошибок в Interbase и в приложении БД.

В InterBase для обработки ошибок используются исключения.
Исключения создаются командой CREATE EXCEPTION ‘СООБЩЕНИЕ’
Вызвать исключения можно в теле триггера или ХП EXCEPTION
При вызове исключения на экран выводится сообщение и происходит откат текущей транзакции (отмен операций вставки, удаления, обновления).



ПРИМЕР:
Рассмотрим след предметную область gruppa(kod integer, nazv char(10))
stud(kod integer, fio char(30), kod_gr)
Бизнес- правило: в группе не более 30 студентов.

I способ с помощью ХП
create exception gr «В группе больше 30 студентов»
create procedure srud_ins(pkod integer, pfio char(50), pkod_gr integer)
as
declare variable kol integer;
begin
select count(*) from stud
where kod_gr=:pkod_gr into kol;
if (kol>30) then exception gr;
Insert into stud(kod, fio, kod_gr)
values (:pkod, :pfio, :pkod_gr)
end.


II способ с помощью триггера
create exception gr «В группе больше 30 студентов»
create trigger stud_ins for stud
active before insert
as
declare variable kol integer;
begin
select count(*) from stud
where kod_gr=new.kod_gr into kol;
if (kol>30) then exception gr;
end.


Обработка ошибок в приложении осуществляется с помощью следующей конструкции языка pascal.
try except end;
ПРИМЕР
try
IBQuery1.ExecSQL;
except
ShowMessage('Ошибка!); end;

Комментарии:

Оставить комментарий
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.