Besoin d'aide pour créer des déclencheurs

Besoin d'aide pour créer des déclencheurs - Shell/Batch - Programmation

Marsh Posté le 16-11-2005 à 16:33:21    

J'ai ces tables et j'ai urgemment besoin d'aide pour créer certains triggers
 
CREATE TABLE Compagnie (
cId Char(4) Primary key,
cNom VARCHAR2(20)
);
 
CREATE TABLE DEPARTEMENT(
dId Char(4),
cId Char(4),
dNom VARCHAR2(20),
ManagerId Char(4),
NombreE NUMERIC
);
 
CREATE TABLE EMPLOYE(
eId Char(4) PRIMARY KEY,
eNom VARCHAR2(20),
Ville VARCHAR2 (20)
);
 
 
CREATE TABLE PROJET (
pId Char(4) PRIMARY KEY,
dId Char(4),
ProjetMgId Char (4),
cout NUMERIC
DateDebut DATE,
Echeance DATE,
);
 
 
CREATE TABLE TRAVAILLER (
eId Char(4),
dId Char(4),
Primary Key (eId, dId),
DateDebut DATE,
DateFin DATE,
Salaire NUMERIC
);
 
CREATE TABLE COMPOSER (
super_pId Char(4),
sous_pId Char(4),
Primary Key (super_pId, sous_pId),
Fraction_cout NUMERIC
);
 
J'apprécierais beaucoup si quelqu'un peut m'aider à écrire au moins un des triggers ci-dessous
 
1- Un trigger qui vérifie après une modification effectuée sur la colonne DATEFIN de la table TRAVAILLER si l'employé donc la période de travaille a été modifiée resulterait en doubles emplois aux différents départements dans une même compagnie. Dans un tel cas la date doit être défaite pour rester sa DATEFIN originelle
 
2- Un trigger qui vérifie qu'avant qu'un rétrait soit effectué sur la table TRAVAILLER, si ce retrait entraîne le retrait du manager d'un projet de la liste des employés oeuvrant dans le projet . Dans ce cas le retrait doit être refusé parce que l'employé est le manager du projet
 
3- Un trigger qui après modification effectuée sur la colonne COUT de la table PROJET, propage la modification vers les super projets dont le cout fut modifié

Reply

Marsh Posté le 16-11-2005 à 16:33:21   

Reply

Marsh Posté le 17-11-2005 à 10:17:40    

Multi avec un sujet deja posté.
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed