Jan Grabowski

Jan Grabowski BI Support Analyst

Temat: PL/SQL - triggery

Witajcie.

Pytanie może się wydać banalne, ale jak zrobić trigger, który ma zapobiegać wstawieniu do DB pracowników daty zatrudnienia z przyszłości ?

ćwiczę na testowej bazie danych hr - z Oracle XE

jest tam tabela employees o wierszach:

employee_id
first_name
last_name
email
phone_number
hire_date
job_id
salary
commision_pct
manager_id
departament_id

domyślam się, że ten trigger należy dodać jako insert do tej tabeli.
jaki to powinien być ty triggeru i dlaczego ?
jak byście to zrobili ?

będę wdzięczny za podpowiedzi.
Damian L.

Damian L. Architekt IT

Temat: PL/SQL - triggery


CREATE or REPLACE TRIGGER wymyslna_nazwa
BEFORE INSERT
ON employees
FOR EACH ROW
BEGIN
if nvl(:new.hire_date, sysdate) > sysdate then
raise_application_error (-20999,'Data zatrudnienia pracownika nie moze byc z przyszlosci');
end if;
END;

Lektura: http://docs.oracle.com/cd/B19306_01/appdev.102/b14251/...
Jan Grabowski

Jan Grabowski BI Support Analyst

Temat: PL/SQL - triggery

wielkie dzięki.

konto usunięte

Temat: PL/SQL - triggery

A ja bym zaszalał i jeszcze ON UPDATE dodał.

Następna dyskusja:

sql server 2008 R2 - job sp...




Wyślij zaproszenie do