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 :

ERREUR SQL : (errno: 121) (debutant)


Sujet :

Requêtes MySQL

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut ERREUR SQL : (errno: 121) (debutant)
    Le bonjour,

    Dans le cadre de ma formation en bts ig je suis ammener a faire une pratique sur le sql. Or lors de la creation d'une de mes table j'ai le message d'erreur suivant : 1005 - Can't create table '.\pti_sql\gerer.frm' (errno: 121).
    Je travail sous wamp et voici les requete SQL executer :

    create table GERER
    (
    ID_TICKET INT,
    INDEX(ID_TICKET),
    CONSTRAINT fk_id_ticket FOREIGN KEY (ID_TICKET) references TICKET(ID_TICKET),
    ID_PERSONNE INT,
    INDEX(ID_PERSONNE),
    CONSTRAINT fk_id_personne FOREIGN KEY (ID_PERSONNE) references PERSONNE_SUPPORT(ID_PERSONNE),
    PRIMARY KEY (ID_TICKET,ID_PERSONNE)
    );
    et enfin voici l'ensemble des tables creer :

    create table TICKET
    (
    ID_TICKET int not null AUTO_INCREMENT PRIMARY KEY,
    STATUT varchar(10),
    CHECK STATUT IN ('ouvert','en cours','fermer'),
    DESCRIPTION varchar(500)
    );


    create table CONTRAT_CLIENT
    (
    ID_CLIENT int not null AUTO_INCREMENT PRIMARY KEY,
    NOM varchar (20),
    PRENOM varchar (20),
    ADRESSE varchar (40),
    CONTACT_1 varchar (40),
    CONTACT_2 varchar (40),
    MAIL varchar (30),
    TEL int(14),
    FAX int (14),
    DATE_DEBUT date,
    DATE_FIN date,
    ID_TICKET INT,
    INDEX(ID_TICKET),
    CONSTRAINT fk_id_ticket FOREIGN KEY(ID_TICKET) references TICKET(ID_TICKET)
    );


    create table TYPE_CONTRAT
    (
    ID_TYPE_CONTRAT int not null AUTO_INCREMENT PRIMARY KEY,
    LIBELLE varchar (20),
    ID_CLIENT INT,
    INDEX(ID_CLIENT),
    CONSTRAINT fk_id_client FOREIGN KEY(ID_CLIENT) references CONTRAT_CLIENT(ID_CLIENT)
    );


    create table PERSONNE_SUPPORT
    (
    ID_PERSONNE int not null AUTO_INCREMENT PRIMARY KEY,
    NOM varchar (20),
    PRENOM varchar (20),
    TEL int (14),
    MAIL varchar (30)
    );
    Si quelqu'un a une idée d'ou viens m'on problème je suis preneur car je ne sais plus trop vers ou chercher

    Amicalement

    Fret

  2. #2
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Ca semble venir du fait que les contraintes "fk_id_personne" et "fk_id_ticket" existent déjà (pour d'autres tables). En changeant leurs noms ça passe.

  3. #3
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Bonjour,

    Il est préférable de respecter un certain ordre dans la création des tables :
    1/ déclaration des colonnes ;
    2/ déclaration de la clef primaire ;
    3/ déclaration des indexes uniques ;
    4/ déclaration des indexes et clefs étrangères.
    Cela permet à l'optimiseur MySQL d'utiliser en priorité les index, et de détecter rapidement les doublons pour les clés.

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci pour vos reponses.

    Pour les clées étrangères effectivement en modifiant leur nom cela fonctionne mais je n'arrive toujours pas a inserere des données je post cela se soir car je ne l'ai pas sous la mains merci de votre aide

    amicalement,

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/04/2011, 20h23
  2. debutant:can't create table errno 121
    Par colocolo dans le forum Requêtes
    Réponses: 4
    Dernier message: 10/04/2009, 18h10
  3. [debutant][Script] Erreur SQL
    Par pmartin8 dans le forum Oracle
    Réponses: 2
    Dernier message: 15/08/2006, 17h43
  4. erreur SQL ...INSERT INTO
    Par naidinp dans le forum ASP
    Réponses: 20
    Dernier message: 18/09/2003, 11h38
  5. erreur sql loader et performance
    Par mobisky dans le forum SQL*Loader
    Réponses: 14
    Dernier message: 20/08/2003, 12h27

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