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

 MySQL Discussion :

Nouveau sur MySQL


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Collégien
    Inscrit en
    Mars 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mars 2011
    Messages : 2
    Par défaut Nouveau sur MySQL
    Je suis nouveau avec MySQL et je doit créer une DB. Je m'y connais bien déjà avec SQL Server mais travailler avec phpmyadmin comme interface de création me perd un peu.

    Donc j'ai 2 tables déjà, et j'aimerais quelques pointeurs sur ce que je doit faire ici.
    Voici mes 2 tables:

    --

    J'essaie de créer une 3ieme table contenant les 2 PK de ces 2 tables mais j'obtiens une erreur

    Voici ma query pour créer la table
    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
    CREATE TABLE `playersellers`.`Commande` 
    (`CommandeID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    FOREIGN KEY (Username) 
      REFERENCES utilisateurs(username) 
      ON UPDATE CASCADE 
      ON DELETE RESTRICT, 
    FOREIGN KEY (CarteID) 
      REFERENCES joueurs(CarteID) 
      ON UPDATE CASCADE 
      ON DELETE RESTRICT, 
    `DateCommande` DATE NOT  NULL, 
    `DateEnvoie` DATE NOT NULL, 
    `Commentaire` TEXT NOT NULL, 
    INDEX (`Username`, `JoueurID`)
    ) 
    ENGINE = InnoDB
    et mon erreur: #1072 - Key column 'CarteID' doesn't exist in table

    Que me manque-t-il? Qu'est-ce qui m'échappe?

  2. #2
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Par défaut
    Je pense que le problème vient des foreign key.

    Regarde ici dans ce cas.

  3. #3
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Il faut d'abord créer les colonnes et ensuite créer les clés étrangères.

    Autres remarques sur ta structure :
    - Username en clé primaire, c'est mal !
    - Ville et Pays devraient être externalisés dans d'autres tables sinon tu risques d'avoir plusieurs fois la même ville ou le même pays avec des orthographes différentes ou des incohérences entre les villes et les pays. Idem probablement pour Equipe qui devrait de plus être au singulier.
    - Un numéro de téléphone de 150 caractères ? Même pour une ville ou un pays, c'est trop grand ! De même qu'un prénom de 50 caractères, pas sûr que ça existe !
    - Une année toute seule n'est pas une date mais un entier.
    - La colonne "DateEnvoie" devrait plutôt être orthographiée "DateEnvoi" !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/02/2009, 21h38
  2. Nouveau sur MySQL: utilisation sur un serveur
    Par zorian dans le forum Débuter
    Réponses: 6
    Dernier message: 06/07/2006, 22h06
  3. export base 4D sur mysql ou sqlserver
    Par jarod71 dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 13/07/2004, 12h55
  4. driver sur mySql
    Par sampq dans le forum Installation
    Réponses: 8
    Dernier message: 19/08/2003, 09h15
  5. possible sur MySQL 4.0 ?
    Par djforest dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/06/2003, 09h49

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