alexj
2003-01-18 10:14:02 UTC
Hi all,
I got some trouble when I generate an application based on this script :
I have succefully deploy the airline sample to JBoss 3.0.4 + Jetty after
update the web.xml file and PostgreSQL 7.3 running on windows.
I got many errors with the PK key of my table.
Thanks for your help.
--
Alexandre Jaquet
/*************************************************************/
/*AUTEUR : Alexandre Jaquet (c) 2002 */
/*DATE : 05.01.2003 */
/*************************************************************/
/*************************************************************/
CREATE TABLE type (
/*************************************************************/
id_type INT NOT NULL,
valeur VARCHAR NOT NULL,
CONSTRAINT id_type PRIMARY KEY (id_type)
);
/*************************************************************/
CREATE TABLE ressource (
/*************************************************************/
id_ressource INT NOT NULL,
nom VARCHAR NOT NULL,
ref_type INT,
CONSTRAINT id_ressource PRIMARY KEY (id_ressource),
CONSTRAINT type_exist FOREIGN KEY (ref_type)
REFERENCES type (id_type)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE personne (
/*************************************************************/
id_personne INT NOT NULL,
ref_ressource INT NOT NULL,
nom VARCHAR (60) NOT NULL,
prenom VARCHAR (60) NOT NULL,
date_de_naissance DATE,
adresse VARCHAR (100),
npa INT,
ville VARCHAR (60),
telephone VARCHAR (20),
email VARCHAR (20),
CONSTRAINT personne_id PRIMARY KEY (id_personne),
CONSTRAINT ressource_exist FOREIGN KEY (ref_ressource)
REFERENCES ressource (id_ressource)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE groupe (
/*************************************************************/
id_groupe INT NOT NULL,
nom VARCHAR (50),
CONSTRAINT groupe_id PRIMARY KEY (id_groupe)
);
/*************************************************************/
CREATE TABLE fait_partie (
/*************************************************************/
id_fait_partie INT,
ref_groupe INT NOT NULL,
ref_personne INT NOT NULL,
CONSTRAINT id_fait_partie PRIMARY KEY (id_fait_partie),
CONSTRAINT groupe_exist FOREIGN KEY (ref_groupe)
REFERENCES groupe (id_groupe)
ON UPDATE CASCADE,
CONSTRAINT personne_exist FOREIGN KEY (ref_personne)
REFERENCES personne (id_personne)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE formation (
/*************************************************************/
id_formation INT NOT NULL,
ref_modele INT,
nom VARCHAR (40) NOT NULL,
durree VARCHAR (10),
cout VARCHAR (10),
CONSTRAINT formation_id PRIMARY KEY (id_formation)
);
/*************************************************************/
CREATE TABLE branche (
/*************************************************************/
id_branche INT NOT NULL,
nom VARCHAR (50),
CONSTRAINT id_branche PRIMARY KEY (id_branche)
);
/*************************************************************/
CREATE TABLE comporte (
/*************************************************************/
id_comporte INT,
ref_formation INT NOT NULL,
ref_branche INT NOT NULL,
CONSTRAINT comporte_id PRIMARY KEY (id_comporte),
CONSTRAINT formation_exist FOREIGN KEY (ref_formation)
REFERENCES formation (id_formation)
ON UPDATE CASCADE,
CONSTRAINT branche_exist FOREIGN KEY (ref_branche)
REFERENCES branche (id_branche)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE competence (
/*************************************************************/
id_competence INT NOT NULL,
valeur VARCHAR (500),
experience VARCHAR (20),
CONSTRAINT id_competence PRIMARY KEY (id_competence)
);
/*************************************************************/
CREATE TABLE matiere (
/*************************************************************/
id_matiere INT NOT NULL,
ref_branche INT NOT NULL,
valeur VARCHAR (500),
CONSTRAINT id_matiere PRIMARY KEY (id_matiere),
CONSTRAINT ref_branche FOREIGN KEY (ref_branche)
REFERENCES branche (id_branche)
);
/*************************************************************/
CREATE TABLE activite (
/*************************************************************/
id_activite INT NOT NULL,
nom VARCHAR (40),
duree VARCHAR (10),
ref_branche INT NOT NULL,
CONSTRAINT activite_id PRIMARY KEY (id_activite),
CONSTRAINT branche_exist FOREIGN KEY (ref_branche)
REFERENCES branche (id_branche)
);
/*************************************************************/
CREATE TABLE participe (
/*************************************************************/
id_participe INT,
ref_personne INT NOT NULL,
ref_activite INT NOT NULL,
CONSTRAINT participe_id PRIMARY KEY (id_participe),
CONSTRAINT personne_exist FOREIGN KEY (ref_personne)
REFERENCES personne (id_personne)
ON UPDATE CASCADE,
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE objectif (
/*************************************************************/
id_objectif INT NOT NULL,
valeur VARCHAR (100),
CONSTRAINT objectif_id PRIMARY KEY (id_objectif)
);
/*************************************************************/
CREATE TABLE commentaire (
/*************************************************************/
id_commentaire INT NOT NULL,
ref_activite INT,
ref_personne INT,
valeur VARCHAR (800),
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite)
ON UPDATE CASCADE,
CONSTRAINT valideur_exist FOREIGN KEY (ref_personne)
REFERENCES personne (id_personne)
ON UPDATE CASCADE,
CONSTRAINT id_commentaire PRIMARY KEY (id_commentaire)
);
/*************************************************************/
CREATE TABLE a_valide (
/*************************************************************/
id_valide INT,
ref_eleve INT NOT NULL,
valideur VARCHAR (50) NOT NULL,
ref_activite INT NOT NULL,
ref_commentaire INT,
statut VARCHAR NOT NULL default 'en cours',
date_validation DATE default 'now',
CONSTRAINT valide_id PRIMARY KEY (id_valide),
CONSTRAINT eleve_exist FOREIGN KEY (ref_eleve)
REFERENCES personne (id_personne),
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite),
CONSTRAINT commentaire_exist FOREIGN KEY (ref_commentaire)
REFERENCES commentaire (id_commentaire)
);
/*************************************************************/
CREATE TABLE se_compose (
/*************************************************************/
id_se_compose INT NOT NULL,
ref_branche INT NOT NULL,
ref_matiere INT NOT NULL,
CONSTRAINT id_se_compose PRIMARY KEY (id_se_compose),
CONSTRAINT branche_exist FOREIGN KEY(ref_branche)
REFERENCES branche (id_branche)
ON UPDATE CASCADE,
CONSTRAINT matiere_exist FOREIGN KEY(ref_matiere)
REFERENCES matiere (id_matiere)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE a_des (
/*************************************************************/
id_a_des INT,
ref_matiere INT NOT NULL,
ref_objectif INT NOT NULL,
CONSTRAINT a_des_id PRIMARY KEY (id_a_des),
CONSTRAINT matiere_exist FOREIGN KEY(ref_matiere)
REFERENCES matiere (id_matiere)
ON UPDATE CASCADE,
CONSTRAINT objectif_exist FOREIGN KEY(ref_objectif)
REFERENCES objectif (id_objectif)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE horraire (
/*************************************************************/
id_horraire INT NOT NULL,
heure_debut VARCHAR NOT NULL,
heure_fin VARCHAR NOT NULL,
CONSTRAINT id_horraire PRIMARY KEY (id_horraire)
);
/*************************************************************/
CREATE TABLE jour (
/*************************************************************/
id_jour INT NOT NULL,
nom VARCHAR NOT NULL,
CONSTRAINT id_jour PRIMARY KEY (id_jour)
);
/*************************************************************/
CREATE TABLE periode (
/*************************************************************/
id_periode INT NOT NULL,
nom VARCHAR NOT NULL,
date_debut DATE NOT NULL,
date_fin DATE NOT NULL,
CONSTRAINT id_periode PRIMARY KEY (id_periode)
);
/*************************************************************/
CREATE TABLE est_planifie (
/*************************************************************/
id_est_planifie INT,
ref_activite INT NOT NULL,
ref_jour INT NOT NULL,
ref_horraire INT NOT NULL,
CONSTRAINT est_planifie_id PRIMARY KEY (id_est_planifie),
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite)
ON UPDATE CASCADE,
CONSTRAINT jour_exist FOREIGN KEY (ref_jour)
REFERENCES jour (id_jour)
ON UPDATE CASCADE,
CONSTRAINT horraire_exist FOREIGN KEY (ref_horraire)
REFERENCES horraire (id_horraire)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE est_compose (
/*************************************************************/
id_est_compose INT,
ref_matiere INT NOT NULL,
ref_cours INT NOT NULL,
CONSTRAINT est_compose_id PRIMARY KEY (id_est_compose),
CONSTRAINT matiere_exist FOREIGN KEY(ref_matiere)
REFERENCES matiere (id_matiere)
ON UPDATE CASCADE,
CONSTRAINT cours_exist FOREIGN KEY(ref_cours)
REFERENCES activite (id_activite)
ON UPDATE CASCADE
);
/*************************************************************/
/*************************************************************/
I got some trouble when I generate an application based on this script :
I have succefully deploy the airline sample to JBoss 3.0.4 + Jetty after
update the web.xml file and PostgreSQL 7.3 running on windows.
I got many errors with the PK key of my table.
Thanks for your help.
--
Alexandre Jaquet
/*************************************************************/
/*AUTEUR : Alexandre Jaquet (c) 2002 */
/*DATE : 05.01.2003 */
/*************************************************************/
/*************************************************************/
CREATE TABLE type (
/*************************************************************/
id_type INT NOT NULL,
valeur VARCHAR NOT NULL,
CONSTRAINT id_type PRIMARY KEY (id_type)
);
/*************************************************************/
CREATE TABLE ressource (
/*************************************************************/
id_ressource INT NOT NULL,
nom VARCHAR NOT NULL,
ref_type INT,
CONSTRAINT id_ressource PRIMARY KEY (id_ressource),
CONSTRAINT type_exist FOREIGN KEY (ref_type)
REFERENCES type (id_type)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE personne (
/*************************************************************/
id_personne INT NOT NULL,
ref_ressource INT NOT NULL,
nom VARCHAR (60) NOT NULL,
prenom VARCHAR (60) NOT NULL,
date_de_naissance DATE,
adresse VARCHAR (100),
npa INT,
ville VARCHAR (60),
telephone VARCHAR (20),
email VARCHAR (20),
CONSTRAINT personne_id PRIMARY KEY (id_personne),
CONSTRAINT ressource_exist FOREIGN KEY (ref_ressource)
REFERENCES ressource (id_ressource)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE groupe (
/*************************************************************/
id_groupe INT NOT NULL,
nom VARCHAR (50),
CONSTRAINT groupe_id PRIMARY KEY (id_groupe)
);
/*************************************************************/
CREATE TABLE fait_partie (
/*************************************************************/
id_fait_partie INT,
ref_groupe INT NOT NULL,
ref_personne INT NOT NULL,
CONSTRAINT id_fait_partie PRIMARY KEY (id_fait_partie),
CONSTRAINT groupe_exist FOREIGN KEY (ref_groupe)
REFERENCES groupe (id_groupe)
ON UPDATE CASCADE,
CONSTRAINT personne_exist FOREIGN KEY (ref_personne)
REFERENCES personne (id_personne)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE formation (
/*************************************************************/
id_formation INT NOT NULL,
ref_modele INT,
nom VARCHAR (40) NOT NULL,
durree VARCHAR (10),
cout VARCHAR (10),
CONSTRAINT formation_id PRIMARY KEY (id_formation)
);
/*************************************************************/
CREATE TABLE branche (
/*************************************************************/
id_branche INT NOT NULL,
nom VARCHAR (50),
CONSTRAINT id_branche PRIMARY KEY (id_branche)
);
/*************************************************************/
CREATE TABLE comporte (
/*************************************************************/
id_comporte INT,
ref_formation INT NOT NULL,
ref_branche INT NOT NULL,
CONSTRAINT comporte_id PRIMARY KEY (id_comporte),
CONSTRAINT formation_exist FOREIGN KEY (ref_formation)
REFERENCES formation (id_formation)
ON UPDATE CASCADE,
CONSTRAINT branche_exist FOREIGN KEY (ref_branche)
REFERENCES branche (id_branche)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE competence (
/*************************************************************/
id_competence INT NOT NULL,
valeur VARCHAR (500),
experience VARCHAR (20),
CONSTRAINT id_competence PRIMARY KEY (id_competence)
);
/*************************************************************/
CREATE TABLE matiere (
/*************************************************************/
id_matiere INT NOT NULL,
ref_branche INT NOT NULL,
valeur VARCHAR (500),
CONSTRAINT id_matiere PRIMARY KEY (id_matiere),
CONSTRAINT ref_branche FOREIGN KEY (ref_branche)
REFERENCES branche (id_branche)
);
/*************************************************************/
CREATE TABLE activite (
/*************************************************************/
id_activite INT NOT NULL,
nom VARCHAR (40),
duree VARCHAR (10),
ref_branche INT NOT NULL,
CONSTRAINT activite_id PRIMARY KEY (id_activite),
CONSTRAINT branche_exist FOREIGN KEY (ref_branche)
REFERENCES branche (id_branche)
);
/*************************************************************/
CREATE TABLE participe (
/*************************************************************/
id_participe INT,
ref_personne INT NOT NULL,
ref_activite INT NOT NULL,
CONSTRAINT participe_id PRIMARY KEY (id_participe),
CONSTRAINT personne_exist FOREIGN KEY (ref_personne)
REFERENCES personne (id_personne)
ON UPDATE CASCADE,
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE objectif (
/*************************************************************/
id_objectif INT NOT NULL,
valeur VARCHAR (100),
CONSTRAINT objectif_id PRIMARY KEY (id_objectif)
);
/*************************************************************/
CREATE TABLE commentaire (
/*************************************************************/
id_commentaire INT NOT NULL,
ref_activite INT,
ref_personne INT,
valeur VARCHAR (800),
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite)
ON UPDATE CASCADE,
CONSTRAINT valideur_exist FOREIGN KEY (ref_personne)
REFERENCES personne (id_personne)
ON UPDATE CASCADE,
CONSTRAINT id_commentaire PRIMARY KEY (id_commentaire)
);
/*************************************************************/
CREATE TABLE a_valide (
/*************************************************************/
id_valide INT,
ref_eleve INT NOT NULL,
valideur VARCHAR (50) NOT NULL,
ref_activite INT NOT NULL,
ref_commentaire INT,
statut VARCHAR NOT NULL default 'en cours',
date_validation DATE default 'now',
CONSTRAINT valide_id PRIMARY KEY (id_valide),
CONSTRAINT eleve_exist FOREIGN KEY (ref_eleve)
REFERENCES personne (id_personne),
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite),
CONSTRAINT commentaire_exist FOREIGN KEY (ref_commentaire)
REFERENCES commentaire (id_commentaire)
);
/*************************************************************/
CREATE TABLE se_compose (
/*************************************************************/
id_se_compose INT NOT NULL,
ref_branche INT NOT NULL,
ref_matiere INT NOT NULL,
CONSTRAINT id_se_compose PRIMARY KEY (id_se_compose),
CONSTRAINT branche_exist FOREIGN KEY(ref_branche)
REFERENCES branche (id_branche)
ON UPDATE CASCADE,
CONSTRAINT matiere_exist FOREIGN KEY(ref_matiere)
REFERENCES matiere (id_matiere)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE a_des (
/*************************************************************/
id_a_des INT,
ref_matiere INT NOT NULL,
ref_objectif INT NOT NULL,
CONSTRAINT a_des_id PRIMARY KEY (id_a_des),
CONSTRAINT matiere_exist FOREIGN KEY(ref_matiere)
REFERENCES matiere (id_matiere)
ON UPDATE CASCADE,
CONSTRAINT objectif_exist FOREIGN KEY(ref_objectif)
REFERENCES objectif (id_objectif)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE horraire (
/*************************************************************/
id_horraire INT NOT NULL,
heure_debut VARCHAR NOT NULL,
heure_fin VARCHAR NOT NULL,
CONSTRAINT id_horraire PRIMARY KEY (id_horraire)
);
/*************************************************************/
CREATE TABLE jour (
/*************************************************************/
id_jour INT NOT NULL,
nom VARCHAR NOT NULL,
CONSTRAINT id_jour PRIMARY KEY (id_jour)
);
/*************************************************************/
CREATE TABLE periode (
/*************************************************************/
id_periode INT NOT NULL,
nom VARCHAR NOT NULL,
date_debut DATE NOT NULL,
date_fin DATE NOT NULL,
CONSTRAINT id_periode PRIMARY KEY (id_periode)
);
/*************************************************************/
CREATE TABLE est_planifie (
/*************************************************************/
id_est_planifie INT,
ref_activite INT NOT NULL,
ref_jour INT NOT NULL,
ref_horraire INT NOT NULL,
CONSTRAINT est_planifie_id PRIMARY KEY (id_est_planifie),
CONSTRAINT activite_exist FOREIGN KEY (ref_activite)
REFERENCES activite (id_activite)
ON UPDATE CASCADE,
CONSTRAINT jour_exist FOREIGN KEY (ref_jour)
REFERENCES jour (id_jour)
ON UPDATE CASCADE,
CONSTRAINT horraire_exist FOREIGN KEY (ref_horraire)
REFERENCES horraire (id_horraire)
ON UPDATE CASCADE
);
/*************************************************************/
CREATE TABLE est_compose (
/*************************************************************/
id_est_compose INT,
ref_matiere INT NOT NULL,
ref_cours INT NOT NULL,
CONSTRAINT est_compose_id PRIMARY KEY (id_est_compose),
CONSTRAINT matiere_exist FOREIGN KEY(ref_matiere)
REFERENCES matiere (id_matiere)
ON UPDATE CASCADE,
CONSTRAINT cours_exist FOREIGN KEY(ref_cours)
REFERENCES activite (id_activite)
ON UPDATE CASCADE
);
/*************************************************************/
/*************************************************************/