IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Probléme créate Table


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 111
    Points : 59
    Points
    59
    Par défaut Probléme créate Table
    Bonjours, j'essaye de créer mes table en mode "sql" mais j'ai quelle souci :
    Ci-joint mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
     
    CREATE TABLE STYLE
    (
    NumS int	identity (1,1),
    LibelleS	Varchar (25),
    CONSTRAINT PK_STYLE PRIMARY KEY (NumS)
    )
     
     
    CREATE TABLE PERSONNE
    (
    NumP  int	identity (1,1),
    NomP  Varchar (30)	,
    PNomP	Varchar (30),
    CONSTRAINT PK_PERSONNE PRIMARY KEY (NumP)
    )
     
     
    CREATE TABLE CD
    (
    NumCd	int	identity (1,1),
    DescripCd	Varchar(50),
    NbeCd	int	,
    CONSTRAINT PK_Cd PRIMARY KEY (NumCd)
    )
     
     
    CREATE TABLE COMPIL
    (
    NumCdC	int,
    NumCompil  int,
    CONSTRAINT FK_COMPIL FOREIGN KEY (NumCdC) REFERENCES CD(NumCd),
    )
     
     
    CREATE TABLE TITRE_C
    (
    NumCdC	int  ,
    NumChanC  int	,
    NomChanC  Varchar(50)  ,
    AuteurChanC  Varchar(50)  ,
    CONSTRAINT PK_TITRE_C PRIMARY KEY(NumCdC, NumChanC)	,
    CONSTRAINT FK_1 FOREIGN KEY (NumCdC) REFERENCES COMPIL(NumCdC)
    )
     
     
    CREATE TABLE ALBUM
    (
    NumCdA	int		,
    Artiste	Varchar(50)	,
    Titre	Varchar(50)	,
    NbeCd	int	,
    CONSTRAINT FK_ALBUM1 FOREIGN KEY (NumCdA) REFERENCES CD(NumCd),
    )
     
     
    CREATE TABLE TITRE_A
    (
    NumCdA	int,
    NumChanA    int	,
    NomChanA    Varchar(50) ,
    CONSTRAINT PK_TITRE_A PRIMARY KEY(NumCdA, NumChanA)	,
    CONSTRAINT FK_1 FOREIGN KEY (NumCdA) REFERENCES ALBUM(NumCdA)
    )
     
     
    CREATE TABLE DVD
    (
    NumCdD	int	,
    Nom	Varchar(50)  ,
    Descrip	Varchar(200)  ,
    NbeCD	int  ,
    CONSTRAINT FK_DVD1 FOREIGN KEY (NumCdD) REFERENCES CD(NumCd),
    )
     
     
    CREATE TABLE PRET
    (
    NumCD	int	,
    NumP	int	,
    DatePret	datetime	,
    DateRendu	  datetime	,
    CONSTRAINT PK_PRET PRIMARY KEY (NumCD,NumP)	,
    CONSTRAINT FK_PRET2 FOREIGN KEY (NumCD) REFERENCES CD(NumCD),
    CONSTRAINT FK_PRET3 FOREIGN KEY (NumP) REFERENCES PERSONNE(NumP)
    )

    L'erreur est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Serveur : Msg 1776, Niveau 16, État 1, Ligne 1
    Aucune clé primaire ou prototype dans la table référencée 'ALBUM' ne correspond à la liste des colonnes de référence de la clé étrangère 'FK_1'.
    Serveur : Msg 1750, Niveau 16, État 1, Ligne 1
    Impossible de créer la contrainte. Voir les erreurs précédentes.
    Les tables TITREA et TITREC ne fonctionne pas.

    J'ai ma table CD suivit de 3 table hiérarchique COMPIL, ALBUM, DVD.
    La table TitreC est un identifiant relatif de la table COMPIL.
    La table TitreA est un identifiant relatif de la table ALBUM.

    C'est avec les identifiants relatif que j'ai des souci.
    Merci de votre aide.
    Silvia

  2. #2
    Membre averti Avatar de Cerberes
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 328
    Points : 338
    Points
    338
    Par défaut
    A essayer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    CREATE TABLE ALBUM
    (
    NumCdA_id int,
    NumCdA   int      ,
    Artiste   Varchar(50)   ,
    Titre   Varchar(50)   ,
    NbeCd   int   ,
    CONSTRAINT PK_ALBUM PRIMARY KEY (NumCdA_id),
    CONSTRAINT FK_ALBUM1 FOREIGN KEY (NumCdA) REFERENCES CD(NumCd),
    )
     
     
    CREATE TABLE TITRE_A
    (
    NumCdA   int,
    NumChanA    int   ,
    NomChanA    Varchar(50) ,
    CONSTRAINT PK_TITRE_A PRIMARY KEY(NumCdA, NumChanA)   ,
    CONSTRAINT FK_1 FOREIGN KEY (NumCdA) REFERENCES ALBUM(NumCdA_id)
    )
    [EDIT]
    Idem pour les tables COMPIL et TITRE_B.
    [/EDIT]
    Merci d'éviter les UP et autres messages inutiles!
    Modérateur Informatique Générale (même si je me mets au Delphi)
    N'oubliez pas les règles!
    Mon adresse e-mail

  3. #3
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Points : 218
    Points
    218
    Par défaut
    Bonjour.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    NumCd   int   identity (1,1), 
    NumCdA   int      ,
    Les types des 2 colonnes doivent représenter EXACTEMENT le même ensemble de valeur. J'ai dans l'idée que identity dont j'ignore l'usage, viole la contrainte que je viens d'exprimer.

    Bon courage.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 111
    Points : 59
    Points
    59
    Par défaut
    L'identity(1,1)
    Sert pour définir le numéro automatique qui commence par 1 et avance de 1 en 1.

    Silvia

  5. #5
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 425
    Points : 358
    Points
    358
    Par défaut
    Je constate que tu as défini une contrainte 2 fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CONSTRAINT FK_1 FOREIGN KEY (NumCdC) REFERENCES COMPIL(NumCdC) 
    CONSTRAINT FK_1 FOREIGN KEY (NumCdA) REFERENCES ALBUM(NumCdA)
    Et ta table ALBUM doit avoir NumCdA comme une clé primaire.

    A++
    OS:Win 2000 Pro, WIN XP
    SGBD: MS Sql Server, Oracle
    Environnement: VS.NET 2002, JBuilder
    Web: www.ndestudents.com

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SQL] Probléme de tables
    Par mr.tux dans le forum Langage SQL
    Réponses: 8
    Dernier message: 18/01/2006, 07h20
  2. Problème de table
    Par scaleo dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 11/10/2005, 09h25
  3. Problème de TABLE ACCESS FULL
    Par elitost dans le forum Administration
    Réponses: 14
    Dernier message: 25/09/2004, 12h37
  4. problème collection TABLE
    Par venusiafalls dans le forum SQL
    Réponses: 6
    Dernier message: 28/04/2004, 16h48
  5. problème de table
    Par ekmule dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/04/2004, 14h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo