[SQL] pb de creation de tables ( oui, je débute ! )

pb de creation de tables ( oui, je débute ! ) [SQL] - Programmation

Marsh Posté le 23-05-2002 à 21:38:53    

Salut, je débute sous Oracle et je n'arrive pas à trouver ma boulette.
Voici mes déclarations de tables :
 
CREATE TABLE joueur
( pseudo VARCHAR2(50) not null PRIMARY KEY,
 classement NUMBER(4, 0) not null
);
CREATE TABLE partie
( numpartie NUMBER(4, 0) not null PRIMARY KEY,
 etat VARCHAR2(10) not null CHECK(etat IN ('en cours', 'terminée';))
);
CREATE TABLE partiejoueur
( pseudo VARCHAR2(50) not null REFERENCES joueur,
 numpartie NUMBER(4,0) not null REFERENCES partie,
 couleur VARCHAR2(6) not null CHECK(couleur IN ('blancs', 'noirs';)),
 CONSTRAINT C_pj PRIMARY KEY ( pseudo, numpartie)
);
CREATE TABLE couppartie
( numcoup NUMBER(3, 0) not null,
 numpartie NUMBER(4, 0) not null REFERENCES partie,
 datecoup DATE not null,
 commentaire VARCHAR2(256),
 CONSTRAINT C_cppar PRIMARY KEY ( numcoup, numpartie, datecoup)
);
CREATE TABLE piece
( numpiece NUMBER(2, 0) not null,
 numpartie NUMBER(4, 0) not null REFERENCES partie,
 couleur VARCHAR2(6) not null CHECK(couleur IN ('blancs', 'noirs';)),
 caseX NUMBER(1, 0) not null,
 caseY NUMBER(1, 0) not null,
 a_bouge NUMBER(1, 0) not null CHECK(a_bouge IN (0, 1)),
 CONSTRAINT C_pce PRIMARY KEY ( numpiece, numpartie)
);
CREATE TABLE couppiece
( numpiece NUMBER(2, 0) not null REFERENCES piece,
 numpartie NUMBER(4, 0) not null REFERENCES partie,
 numcoup NUMBER(3, 0) not null REFERENCES couppartie,
 couleur VARCHAR2(6) not null CHECK(couleur IN ('blancs', 'noirs';)),
 typecoup VARCHAR2(10) not null,
 caseX NUMBER(1, 0) not null,
 caseY NUMBER(1, 0) not null,
 CONSTRAINT C_cppce PRIMARY KEY ( numpiece, numpartie, numcoup)
);

 
Voici l'erreur qu'il me marque lors de la création de couppiece :
 
(       numpiece NUMBER(2, 0) not null REFERENCES piece,                                                  *
ERREUR à la ligne 2 :
ORA-02256: le nombre de colonnes de référence doit correspondre au nombre de
colonnes référencées

 
Je comprends pas du tout ce qu'il veut me dire alors s'il vous plaît, aidez-moi ! De plus, si quelque chose vous choque dans mes tables, dîtes le moi SVP !
 :hello:

 

[jfdsdjhfuetppo]--Message édité par John of the Baptiste le 23-05-2002 à 21:54:08--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 23-05-2002 à 21:38:53   

Reply

Marsh Posté le 23-05-2002 à 22:01:28    

siouplait !!!!  :cry:

Reply

Marsh Posté le 24-05-2002 à 07:15:30    

[:yoyoz]

Reply

Marsh Posté le 24-05-2002 à 09:44:53    

ben ta clé sur ta table pièce a deux colonnes, donc fo créer une clé étrangère sur deux colonnes, pas sur une  :D

Reply

Marsh Posté le 24-05-2002 à 13:15:23    

ddr555 a écrit a écrit :

ben ta clé sur ta table pièce a deux colonnes, donc fo créer une clé étrangère sur deux colonnes, pas sur une  :D  




 
Merci !!  :hello:  
En fait je m'en suis rendu compte ce matin en regardant le peu de cours que j'ai (moi, secher ???  :ange: ). dans la foulée, je suis allé m'acheter un petit bouquin de SQL à la fnac. Je reviendrais reposer des questions quand j'aurai des vrais soucis !!!  :D

Reply

Sujets relatifs:

Leave a Replay

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