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

Requêtes MySQL Discussion :

Problème avec plusieurs clés etrangères


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Problème avec plusieurs clés etrangères
    Bonjour,

    Je suis tout nouveau et je debute avec mysql.
    J'ai un petit problème avec la creation de clés etrangères dans plusieurs tables.
    Voici le 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
     
    SET FOREIGN_KEY_CHECKS = 0;
     
    CREATE TABLE `video` (
      `video_id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
      `video_titre` VARCHAR(150)  NOT NULL,
      `video_info` TEXT ,
      `video_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
      `video_vue` INT,
      `video_tag`  VARCHAR (150),
      `categorie_id` INT UNSIGNED NOT NULL,
    	PRIMARY KEY (`video_id`),
      CONSTRAINT `FKcategorie` FOREIGN KEY `FKcategorie` (`categorie_id`)
        REFERENCES `categorie` (`categorie_id`)
        ON DELETE CASCADE
        ON UPDATE CASCADE
    )ENGINE = InnoDB
    CHARACTER SET latin1 COLLATE latin1_swedish_ci;
     
     
    CREATE TABLE `categorie` (
      `categorie_id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
      `libelle_categorie` VARCHAR(32) NOT NULL 
     
    )TYPE=InnoDB
    CHARACTER SET latin1 COLLATE latin1_swedish_ci;
     
     
    CREATE TABLE `commentaire` (
    	`commentaire_id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
    	`commentaire_info` TEXT,
    	`video_id` INT UNSIGNED NOT NULL,	
    	CONSTRAINT `FKvideo` FOREIGN KEY `FKvideo` (`video_id`)
    		REFERENCES `video` (`video_id`)
    		ON DELETE CASCADE
    		ON UPDATE CASCADE
    )TYPE=InnoDB
    CHARACTER SET latin1 COLLATE latin1_swedish_ci;
     
     
    CREATE TABLE `note` (
    	`note_id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
    	`note_note` INT (10),
    	`video_id` INT UNSIGNED NOT NULL,
    	CONSTRAINT `FKvideo` FOREIGN KEY `FKvideo` (`video_id`)
    		REFERENCES `video` (`video_id`)
    		ON DELETE CASCADE
    		ON UPDATE CASCADE
    )
    TYPE=InnoDB
    CHARACTER SET latin1 COLLATE latin1_swedish_ci;
     
     
     
     
    SET FOREIGN_KEY_CHECKS = 1;


    Impossible de créer la dernière table note, alors qu'il crée la table commentaire qui est identique.

    J'ai vu sur le forum qu'il y a une histoire d'index , merci de m'eclairer!

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 142
    Points : 185
    Points
    185
    Par défaut
    Quel est le message d'erreur renvoyé par MySQL ?
    Personnellement le INT(10) me parait louche, qu'as-tu voulu indiquer avec ce 10 entre parenthèses ??

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    voici le message d'erreur:
    pour le INT(10) je me suis trompé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Erreur
     
    requête SQL:
     
    CREATE TABLE `note` (
    `note_id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `note_note` INT,
    `video_id` INT UNSIGNED NOT NULL ,
    CONSTRAINT `FKvideo` FOREIGN KEY `FKvideo` ( `video_id` ) REFERENCES `video` ( `video_id` ) ON DELETE CASCADE ON UPDATE CASCADE
    ) TYPE = InnoDB CHARACTER SET latin1 COLLATE latin1_swedish_ci;
     
    MySQL a répondu:Documentation
    #1005 - Ne peut créer la table '.\cest\note.frm' (Errcode: 121)
    c'est lorsqu'il veut intégrer video_id une deuxieme fois dans une table qu'il crée cette erreur.

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 142
    Points : 185
    Points
    185
    Par défaut
    A mon avis, ce qu'il n'aime pas, c'est que tu aies mis le même nom à tes 2 contraintes de clé étrangère.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/12/2005, 19h56
  2. Creation d'une table avec plusieurs clés
    Par mic79 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/06/2005, 11h17
  3. [XP Pro]Problème avec plusieurs profils utilisateurs sur PC
    Par marsup54 dans le forum Windows XP
    Réponses: 8
    Dernier message: 27/04/2005, 09h32
  4. [CONCEPTION MCD] Problème avec les clés composées
    Par fabriceMerc dans le forum Schéma
    Réponses: 3
    Dernier message: 14/02/2005, 09h43
  5. [postgresql]creer une table avec plusieurs clés primaire??
    Par perlgirl dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/11/2004, 17h24

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