Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/04/2011, 02h57   #1
Invité de passage
 
Homme
Collégien
Inscription : mars 2011
Messages : 2
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Collégien

Informations forums :
Inscription : mars 2011
Messages : 2
Points : 1
Points : 1
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 :
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?
Tearjerker est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 13h14   #2
Rédacteur/Modérateur
 
Avatar de David55
 
Homme David S.
Etudiant en alternance
Inscription : août 2010
Messages : 1 167
Détails du profil
Informations personnelles :
Nom : Homme David S.
Âge : 22
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Etudiant en alternance
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : août 2010
Messages : 1 167
Points : 2 304
Points : 2 304
Je pense que le problème vient des foreign key.

Regarde ici dans ce cas.
__________________
Vous trouverez ma page perso avec des tutoriels sur Android et BIRT au lien suivant : http://dsilvera.developpez.com
N'oubliez pas de voter pour les messages dont la réponse est pertinente (en bas à droite du cadrant)
Vous voulez afficher du code :
Votre problème est résolu :
Pas de question technique par MP !
David55
David55 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 11h28   #3
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 998
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
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 : 10 998
Points : 18 262
Points : 18 262
Envoyer un message via MSN à CinePhil
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 de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h10.


 
 
 
 
Partenaires

Hébergement Web