|
|
|
|
CREATE TABLE FAMILLE
(
code_famille VARCHAR2(2),
nom_famille VARCHAR(40),
taux_rem NUMBER(6,3),
mont_rem NUMBER(18,6),
CONSTRAINT PK_FAMILLE PRIMARY KEY (code_famille));
CREATE TABLE SOUS_FAMILLE
(
code_sf VARCHAR2(4),
nom_sf VARCHAR2(40),
taux_rem NUMBER(18,6),
mont_rem NUMBER(18,6),
code_famille VARCHAR2(2),
CONSTRAINT PK_SOUS_FAMILLE PRIMARY KEY (code_sf),
CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille),
REFERENCE FAMILLE (code_famille));
CREATE TABLE ARTICLE
(
CODE_ART VARCHAR2(20),
CODE_SF VARCHAR2(4),
DESIGNATION_ART VARCHAR2(50),
US VARCHAR2(2),
UL VARCHAR2(2),
UL_US NUMBER(10,6),
DERNIER_PA NUMBER(18,6),
DATE_SAISIE DATE,
DATE_DERN_MODIF DATE,
CONSTRAINT PK_ARTICLE PRIMARY KEY (CODE_ART),
CONSTRAINT FK_ARTICLE FOREIGN KEY (CODE_SF),
REFERENCE SOUS_FAMILLE (CODE_SF));
CREATE TABLE MAGASIN
(
code_mag VARCHAR2(3),
linelle_mag VARCHAR2(40),
CONSTRAINT PK_MAGASIN PRIMARY KEY (code_mag));
CREATE TABLE ARTICLE_STK_MAGASIN
(
code_mag VARCHAR2(3),
code_art VARCHAR2(20),
qtit_stock NUMBER(10,3),
stock_min NUMBER(10,3),
stock_max NUMBER(10,3),
stock_alerte NUMBER(10,3),
Colonne_7 <Non défini>,
CONSTRAINT PK_ARTICLE_STK_MAGASIN PRIMARY KEY (code_mag),
CONSTRAINT PK_ARTICLE_STK_MAGASIN PRIMARY KEY (code_art),
CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_mag),
CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_art),
REFERENCE ARTICLE (CODE_SF));
CREATE TABLE PRIX_ARTICLE
(
code_art VARCHAR2(20),
code_prix VARCHAR2(2),
prix NUMBER(18,6),
CONSTRAINT PK_PRIX_ARTICLE PRIMARY KEY (code_art),
CONSTRAINT PK_PRIX_ARTICLE PRIMARY KEY (code_prix),
CONSTRAINT FK_PRIX_ARTICLE FOREIGN KEY (code_art),
CONSTRAINT FK_PRIX_ARTICLE FOREIGN KEY (code_prix),
REFERENCE ARTICLE (CODE_SF));
CREATE TABLE PRIX
(
code_prix VARCHAR2(2),
libelle_prix VARCHAR2(30),
CONSTRAINT PK_PRIX PRIMARY KEY (code_prix));
CREATE TABLE TYPE_MVT
(
code_type VARCHAR2(2),
libelle VARCHAR2(30),
signe VARCHAR2(1),
CONSTRAINT PK_TYPE_MVT PRIMARY KEY (code_type));
CREATE TABLE LIGNES_MVT
(
code_type_mvt VARCHAR2(2),
num_mvt VARCHAR2(8),
date_mvt DATE,
CODE_ART VARCHAR2(20),
QUANTITE NUMBER(10,3),
CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (code_type_mvt),
CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (num_mvt),
CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (date_mvt),
CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (CODE_ART));
CREATE TABLE MOUVEMENT
(
code_type_mvt VARCHAR2(2),
num_mvt VARCHAR2(8),
date_mvt DATE,
code_type VARCHAR2(2),
montant_mvt NUMBER(18,6),
code... VARCHAR2(3),
CONSTRAINT PK_MOUVEMENT PRIMARY KEY (code_type_mvt),
CONSTRAINT PK_MOUVEMENT PRIMARY KEY (num_mvt),
CONSTRAINT PK_MOUVEMENT PRIMARY KEY (date_mvt),
CONSTRAINT FK_MOUVEMENT FOREIGN KEY (code_type));
|
bonsoir,
regarde la syntaxe des fk ici : http://www.techonthenet.com/oracle/foreign_keys/foreign_keys.php sur les lignes pk et fk, il ne faut pas de virgule de séparation en fin, une seul PK possible sur une table et pour pouvoir tester ton script, il faudrait que tu delete toutes les tables avant de commencer et il y a des lignes de description de colonnes incomplètes tu devrais tester chaque création individuellement pour corriger pas à pas chaque ordre sql cordialement |
|
Bonjour,
Merci de ton aide et surtout du lien, le cours est bien clair :) J'ai corrigé les fautes que tu as signalé : - J'ai supprimé les virgules après la déclaration des clés primaires er étrangères. - J'ai complété la déclaration des références qui me manquaient, au début je ne les ai pas écrites car je n'étais pas sûre du syntaxe. une seul PK possible sur une table --> Dans le modèle physique qui me fut fourni, dans une table, il y a -parfois- plus d'une clé primaire. et pour pouvoir tester ton script, il faudrait que tu delete toutes les tables avant de commencer --> Comment je fais ? Sur SQL* Plus Worksheet, je me connecte en utilisant le nom d'utilisateur et je fais START .... (le chemin qui mène au fichier .sql) puis je recopie ce qu'il y a dans ce fichier, et je fais F5. Des erreurs existent toujours et je ne sais pas pourquoi. Je renvoie le code après les modifications que j'ai apportées : CREATE TABLE FAMILLE ( code_famille VARCHAR2(2), nom_famille VARCHAR(40), taux_rem NUMBER(6,3), mont_rem NUMBER(18,6), CONSTRAINT PK_FAMILLE PRIMARY KEY (code_famille) ); CREATE TABLE SOUS_FAMILLE ( code_sf VARCHAR2(4), nom_sf VARCHAR2(40), taux_rem NUMBER(18,6), mont_rem NUMBER(18,6), code_famille VARCHAR2(2), CONSTRAINT PK_SOUS_FAMILLE PRIMARY KEY (code_sf), CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille) REFERENCE FAMILLE (code_famille) ); CREATE TABLE ARTICLE ( CODE_ART VARCHAR2(20), CODE_SF VARCHAR2(4), DESIGNATION_ART VARCHAR2(50), US VARCHAR2(2), UL VARCHAR2(2), UL_US NUMBER(10,6), DERNIER_PA NUMBER(18,6), DATE_SAISIE DATE, DATE_DERN_MODIF DATE, CONSTRAINT PK_ARTICLE PRIMARY KEY (CODE_ART) CONSTRAINT FK_ARTICLE FOREIGN KEY (CODE_SF) REFERENCE SOUS_FAMILLE (CODE_SF) ); CREATE TABLE MAGASIN ( code_mag VARCHAR2(3), linelle_mag VARCHAR2(40), CONSTRAINT PK_MAGASIN PRIMARY KEY (code_mag) ); CREATE TABLE ARTICLE_STK_MAGASIN ( code_mag VARCHAR2(3), code_art VARCHAR2(20), qtit_stock NUMBER(10,3), stock_min NUMBER(10,3), stock_max NUMBER(10,3), stock_alerte NUMBER(10,3), Colonne_7 <Non défini>, CONSTRAINT PK_ARTICLE_STK_MAGASIN PRIMARY KEY (code_mag) CONSTRAINT PK_ARTICLE_STK_MAGASIN PRIMARY KEY (code_art) CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_mag) CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_art) REFERENCE MAGASIN (code_mag,code_art) ); CREATE TABLE PRIX_ARTICLE ( code_art VARCHAR2(20), code_prix VARCHAR2(2), prix NUMBER(18,6), CONSTRAINT PK_PRIX_ARTICLE PRIMARY KEY (code_art) CONSTRAINT PK_PRIX_ARTICLE PRIMARY KEY (code_prix) CONSTRAINT FK_PRIX_ARTICLE FOREIGN KEY (code_art) CONSTRAINT FK_PRIX_ARTICLE FOREIGN KEY (code_prix) REFERENCE ARTICLE (code_art,code_prix) ); CREATE TABLE PRIX ( code_prix VARCHAR2(2), libelle_prix VARCHAR2(30), CONSTRAINT PK_PRIX PRIMARY KEY (code_prix) ); CREATE TABLE TYPE_MVT ( code_type VARCHAR2(2), libelle VARCHAR2(30), signe VARCHAR2(1), CONSTRAINT PK_TYPE_MVT PRIMARY KEY (code_type) ); CREATE TABLE LIGNES_MVT ( code_type_mvt VARCHAR2(2), num_mvt VARCHAR2(8), date_mvt DATE, CODE_ART VARCHAR2(20), QUANTITE NUMBER(10,3), CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (code_type_mvt) CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (num_mvt) CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (date_mvt) CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (CODE_ART) REFERENCE ARTICLE (code_type_mvt,num_mvt,date_mvt,CODE_ART) ); CREATE TABLE MOUVEMENT ( code_type_mvt VARCHAR2(2), num_mvt VARCHAR2(8), date_mvt DATE, code_type VARCHAR2(2), montant_mvt NUMBER(18,6), code_mag VARCHAR2(3), CONSTRAINT PK_MOUVEMENT PRIMARY KEY (code_type_mvt) CONSTRAINT PK_MOUVEMENT PRIMARY KEY (num_mvt) CONSTRAINT PK_MOUVEMENT PRIMARY KEY (date_mvt) CONSTRAINT FK_MOUVEMENT FOREIGN KEY (code_type) CONSTRAINT FK_MOUVEMENT FOREIGN KEY (code_mag) REFERENCE TYPE_MVT (code_type,code_mag) ); Bonne journée lumineuse :) |
Bonjour khaoula,
il y a juste un probleme au niveau de l'ecriture de la syntaxe pour la clé etrangere c'est pas reference mais c'est REFERENCES avec un S a la fin, tu visite le site donné par l'autre personne il y a le script du programme et il faut mieux de faire un copier-coller et par la suite tu remplaces par tes propres attributs pour éviter les erreurs. http://www.techonthenet.com/oracle/foreign_keys/foreign_keys.php j'espere que ça va etre utile pour toi. cordialement |
|
Il n'y a qu'une PK, mais elle peut comporter plusieurs champs (chp1,chp2,...)
Avant de relancer ton script, il faudrait supprimer chaque table, par exemple dans un autre .sql qui contiendrait : drop table famille; drop table sous_famille; ... Dans ton sql, il faudrait mettre un message (avec la commande prompt) avant chaque commande, comme cela on sait sur quelle commande on a une erreur comme : prompt creation TABLE FAMILLE CREATE TABLE FAMILLE ( ... prompt creation SOUS_FAMILLE CREATE TABLE SOUS_FAMILLE ( Tu n'as pas recopié le resultat pour avoir la liste des erreurs, de toute façon ce sera plus lisible avec les instructions comme ci-dessus. ca c'est sur c'est une anomalie : Colonne_7 <Non défini>, il faut mettre en multi champ, par exemple : CONSTRAINT PK_ARTICLE_STK_MAGASIN PRIMARY KEY (code_mag,code_art) CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_mag,code_art) REFERENCES MAGASIN (code_mag,code_art) |
|
Me revoili,
J'espère que mes questions ne sont pas trop chiantes, ce que je n'ai pas compris est le fait de créer un autre fichier .sql dans lequel je supprime les tables. Quel est son interêt ? Et dans ce fichier, il faut que je supprime "toutes" les tables ? Pour les clés primaires et étrangères, je les ai rassemblées dans une seule ligne, mais avec plusieurs champs. REFERENCES a remplacé REFERENCE. Pour le champ Colonne_7 <Non défini>, il est défini comme-ça dans le modèle physique, devrais-je remplacer le "non défini" par la valeur "null" ? Enfin, voici les erreurs qu'on me fasse sortir : creation TABLE FAMILLE CREATE TABLE FAMILLE * ERREUR à la ligne 1 : ORA-00955: Ce nom d'objet existe déjà creation TABLE SOUS_FAMILLE CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille) * ERREUR à la ligne 9 : ORA-00907: Parenthèse de droite absente creation TABLE ARTICLE CONSTRAINT FK_ARTICLE FOREIGN KEY (CODE_SF) * ERREUR à la ligne 13 : ORA-00907: Parenthèse de droite absente creation TABLE MAGASIN CREATE TABLE MAGASIN * ERREUR à la ligne 1 : ORA-00955: Ce nom d'objet existe déjà creation TABLE ARTICLE_STK_MAGASIN CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_mag,code_art) * ERREUR à la ligne 10 : ORA-00907: Parenthèse de droite absente creation TABLE PRIX_ARTICLE CONSTRAINT FK_PRIX_ARTICLE FOREIGN KEY (code_art,code_prix) * ERREUR à la ligne 7 : ORA-00907: Parenthèse de droite absente creation TABLE PRIX CREATE TABLE PRIX * ERREUR à la ligne 1 : ORA-00955: Ce nom d'objet existe déjà creation TABLE TYPE_MVT CREATE TABLE TYPE_MVT * ERREUR à la ligne 1 : ORA-00955: Ce nom d'objet existe déjà creation TABLE LIGNES_MVT REFERENCES ARTICLE (code_type_mvt,num_mvt,date_mvt,CODE_ART) * ERREUR à la ligne 9 : ORA-00942: Table ou vue inexistante creation TABLE MOUVEMENT CONSTRAINT FK_MOUVEMENT FOREIGN KEY (code_type,code_mag) * ERREUR à la ligne 10 : ORA-00907: Parenthèse de droite absente J'ai appris beaucoup de choses que je n'ai pas eu l'occasion de voir lors du cours, je t'en remercie :) |
|
il faut que tu fasses un fichier texte supp.sql qui supprime toutes les tables :
drop table famille; drop table sous_famille; ... que tu executes ce fichier .sql avant de lancer le sql de creation, car sinon tu as les erreurs : ERREUR à la ligne 1 : ORA-00955: Ce nom d'objet existe déjà puisque la table existe dejà elle ne peut pas etre recrée * Colonne_7 <Non défini>, ça ne peut pas exister, soit tu enleves la ligne soit tu mets quelquechose comme : colonne_7 varchar2(2) sinon cela ne marchera jamais * pour cette erruer là, qui est présente sur le nombreuses tables : CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille) * ERREUR à la ligne 9 : ORA-00907: Parenthèse de droite absente il faudrait que tu réaffiches le script que tu lances :-) |
|
Resalut,
J'ai fait ce que tu m'as demandée et ça a marché :) Reste une erreur est la suivante : CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille) * ERREUR à la ligne 9 : ORA-00907: Parenthèse de droite absente Voici le script à la din : prompt creation TABLE FAMILLE CREATE TABLE FAMILLE ( code_famille VARCHAR2(2), nom_famille VARCHAR(40), taux_rem NUMBER(6,3), mont_rem NUMBER(18,6), CONSTRAINT PK_FAMILLE PRIMARY KEY (code_famille) ); prompt creation TABLE SOUS_FAMILLE CREATE TABLE SOUS_FAMILLE ( code_sf VARCHAR2(4), nom_sf VARCHAR2(40), taux_rem NUMBER(18,6), mont_rem NUMBER(18,6), code_famille VARCHAR2(2), CONSTRAINT PK_SOUS_FAMILLE PRIMARY KEY (code_sf) CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille) REFERENCES FAMILLE (code_famille) ); prompt creation TABLE ARTICLE CREATE TABLE ARTICLE ( CODE_ART VARCHAR2(20), CODE_SF VARCHAR2(4), DESIGNATION_ART VARCHAR2(50), US VARCHAR2(2), UL VARCHAR2(2), UL_US NUMBER(10,6), DERNIER_PA NUMBER(18,6), DATE_SAISIE DATE, DATE_DERN_MODIF DATE, CONSTRAINT PK_ARTICLE PRIMARY KEY (CODE_ART) CONSTRAINT FK_ARTICLE FOREIGN KEY (CODE_SF) REFERENCES SOUS_FAMILLE (CODE_SF) ); prompt creation TABLE MAGASIN CREATE TABLE MAGASIN ( code_mag VARCHAR2(3), linelle_mag VARCHAR2(40), CONSTRAINT PK_MAGASIN PRIMARY KEY (code_mag) ); prompt creation TABLE ARTICLE_STK_MAGASIN CREATE TABLE ARTICLE_STK_MAGASIN ( code_mag VARCHAR2(3), code_art VARCHAR2(20), qtit_stock NUMBER(10,3), stock_min NUMBER(10,3), stock_max NUMBER(10,3), stock_alerte NUMBER(10,3), CONSTRAINT PK_ARTICLE_STK_MAGASIN PRIMARY KEY (code_mag,code_art) CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_mag,code_art) REFERENCES MAGASIN (code_mag,code_art) ); prompt creation TABLE PRIX_ARTICLE CREATE TABLE PRIX_ARTICLE ( code_art VARCHAR2(20), code_prix VARCHAR2(2), prix NUMBER(18,6), CONSTRAINT PK_PRIX_ARTICLE PRIMARY KEY (code_art,code_prix) CONSTRAINT FK_PRIX_ARTICLE FOREIGN KEY (code_art,code_prix) REFERENCES ARTICLE (code_art,code_prix) ); prompt creation TABLE PRIX CREATE TABLE PRIX ( code_prix VARCHAR2(2), libelle_prix VARCHAR2(30), CONSTRAINT PK_PRIX PRIMARY KEY (code_prix) ); prompt creation TABLE TYPE_MVT CREATE TABLE TYPE_MVT ( code_type VARCHAR2(2), libelle VARCHAR2(30), signe VARCHAR2(1), CONSTRAINT PK_TYPE_MVT PRIMARY KEY (code_type) ); prompt creation TABLE LIGNES_MVT CREATE TABLE LIGNES_MVT ( code_type_mvt VARCHAR2(2), num_mvt VARCHAR2(8), date_mvt DATE, CODE_ART VARCHAR2(20), QUANTITE NUMBER(10,3), CONSTRAINT FK_LIGNES_MVT FOREIGN KEY (code_type_mvt,num_mvt,date_mvt,CODE_ART) REFERENCES ARTICLE (code_type_mvt,num_mvt,date_mvt,CODE_ART) ); prompt creation TABLE MOUVEMENT CREATE TABLE MOUVEMENT ( code_type_mvt VARCHAR2(2), num_mvt VARCHAR2(8), date_mvt DATE, code_type VARCHAR2(2), montant_mvt NUMBER(18,6), code_mag VARCHAR2(3), CONSTRAINT PK_MOUVEMENT PRIMARY KEY (code_type_mvt,num_mvt,date_mvt) CONSTRAINT FK_MOUVEMENT FOREIGN KEY (code_type,code_mag) REFERENCES TYPE_MVT (code_type,code_mag) ); Merci :) |
|
en fait j'avais été trop rapide dans ma première explication,
il faut bien une virgule entre chaque contrainte (mais pas sur la FK entre sa definition et la reference) donc : ... code_famille VARCHAR2(2) , CONSTRAINT PK_SOUS_FAMILLE PRIMARY KEY (code_sf) , CONSTRAINT FK_SOUS_FAMILLE FOREIGN KEY (code_famille) REFERENCES FAMILLE (code_famille) ); on devrait approcher de la fin :-)) jee pee |
|
Bonsoir,
Je commence à me sentir trop lourde et j'ai honte de dire que ça génére encore des erreurs, cette fois-ci c'est différent : (J'ai recopié même le résultat de l'exécution de la suppression des tables) SQL*Plus: Release 9.0.1.0.1 - Production on Je Fev 28 20:37:48 2008
(c) Copyright 2001 Oracle Corporation. All rights reserved.
Connecté.
Connecté.
DROP TABLE FAMILLE
*
ERREUR à la ligne 1 :
ORA-02449: clés uniques/primaires de la table référencées par des clés
étrangères
DROP TABLE SOUS_FAMILLE
*
ERREUR à la ligne 1 :
ORA-02449: clés uniques/primaires de la table référencées par des clés
étrangères
Table supprimée.
Table supprimée.
DROP TABLE ARTICLE_STK_MAGASIN
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE PRIX_ARTICLE
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
Table supprimée.
Table supprimée.
DROP TABLE LIGNES_MVT
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE MOUVEMENT
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
Connecté.
DROP TABLE FAMILLE
*
ERREUR à la ligne 1 :
ORA-02449: clés uniques/primaires de la table référencées par des clés
étrangères
Table supprimée.
DROP TABLE ARTICLE
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE MAGASIN
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE ARTICLE_STK_MAGASIN
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE PRIX_ARTICLE
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE PRIX
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE TYPE_MVT
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE LIGNES_MVT
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
DROP TABLE MOUVEMENT
*
ERREUR à la ligne 1 :
ORA-00942: Table ou vue inexistante
creation TABLE FAMILLE
CREATE TABLE FAMILLE
*
ERREUR à la ligne 1 :
ORA-00955: Ce nom d'objet existe déjà
creation TABLE SOUS_FAMILLE
Table créée.
creation TABLE ARTICLE
Table créée.
creation TABLE MAGASIN
Table créée.
creation TABLE ARTICLE_STK_MAGASIN
REFERENCES MAGASIN (code_mag,code_art)
*
ERREUR à la ligne 11 :
ORA-00904: Nom de colonne non valide
creation TABLE PRIX_ARTICLE
REFERENCES ARTICLE (code_art,code_prix)
*
ERREUR à la ligne 8 :
ORA-00904: Nom de colonne non valide
creation TABLE PRIX
Table créée.
creation TABLE TYPE_MVT
Table créée.
creation TABLE LIGNES_MVT
REFERENCES ARTICLE (code_type_mvt,num_mvt,date_mvt,CODE_ART)
*
ERREUR à la ligne 9 :
ORA-00904: Nom de colonne non valide
creation TABLE MOUVEMENT
CONSTRAINT FK_MOUVEMENT FOREIGN KEY (code_type,code_mag)
*
ERREUR à la ligne 10 :
ORA-00904: Nom de colonne non valide
Pourtant, j'ai ajouté les virgules, je me demande si dans ce cas :
prompt creation TABLE PRIX
CREATE TABLE PRIX
(
code_prix VARCHAR2(2),
libelle_prix VARCHAR2(30),
CONSTRAINT PK_PRIX PRIMARY KEY (code_prix)
);
Faut-il que je mette un virgule après la contrainte ? Bien des choses à toi :) |
|
pour les drop de table
si tu n'as pas encore creer des enregistrement dans les tables, il faudrait supprimer celles qui ont des clés étrangeres (FK) avant celle qui contient la FK de reference en fait : il faut creer le pere puis le fils (avec FK) et il faut supprimer le fils puis le père (en lancant 3 fois le sql de drop cela devrait toutes les supprimer aussi :-)) ----------------------- Pourtant, j'ai ajouté les virgules, je me demande si dans ce cas : prompt creation TABLE PRIX CREATE TABLE PRIX ( code_prix VARCHAR2(2), libelle_prix VARCHAR2(30), CONSTRAINT PK_PRIX PRIMARY KEY (code_prix) ); Faut-il que je mette un virgule après la contrainte ? NON, la virgule ne sert qu'à la separation s'il y a plusieurs contraintes (par exemple une PK et une FK) ------------------------- pour les erreurs de type : creation TABLE ARTICLE_STK_MAGASIN REFERENCES MAGASIN (code_mag,code_art) * ERREUR à la ligne 11 : ORA-00904: Nom de colonne non valide La FK doit faire reference à un champ qui doit exister dans la table etrangère. Code_art n'est pas un champ de la table magasin, la FK doit juste être : CONSTRAINT FK_ARTICLE_STK_MAGASIN FOREIGN KEY (code_mag) REFERENCES MAGASIN (code_mag) |
|
Salut,
GRACE A TOI, J'AI PU CREER TOUTES LES TABLES ET JE T'EN REMERCIE INFINIMENT :) Je suis très contente ! Un petit cadeau de chez moi:)
|
Résultats pour [SQL] Requêtes mal écrites.
Résultats pour [SQL] Requêtes mal écrites.
Résultats pour [SQL] Requêtes mal écrites.