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 :

Can t create table (errno 150)


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 65
    Points : 50
    Points
    50
    Par défaut Can t create table (errno 150)
    bonjour, avec mysql j'essaye de copier des tables d'une base à une autre
    les 2 premieres tables ont été copiées mais la 3ème (tbl3) me met une erreur :
    Can't create table './......../tbl3.frm' (errno: 150)

    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
     
    CREATE TABLE tbl1 (
      id int(11) NOT NULL auto_increment,
      libelle varchar(100) NOT NULL,
      PRIMARY KEY  (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
     
    CREATE TABLE tbl2 (
      id int(11) NOT NULL,
      nom varchar(255) NOT NULL default '0',
      texte longtext,
      adresse longtext,
      prix decimal(12,2) default NULL,
      `type` varchar(255) default NULL,
      PRIMARY KEY  (id),
      KEY prix (prix),
      KEY `type` (`type`),
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
     
    CREATE TABLE tbl3 (
      id int(11) NOT NULL auto_increment,
      id_tbl2 int(11) NOT NULL,
      reference varchar(20) NOT NULL,
      originebien int(11) NOT NULL default '1',
      PRIMARY KEY  (id),
      UNIQUE KEY id_tbl2 (id_tbl2),
      KEY originebien (originebien),
      CONSTRAINT tbl3_ibfk_4 FOREIGN KEY (id_tbl2) REFERENCES tbl2 (id) ON DELETE CASCADE,
      CONSTRAINT tbl3_ibfk_5 FOREIGN KEY (originebien) REFERENCES tbl1 (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
     
    Can't create table './agencesi/tbl3.frm' (errno: 150)
    J'ai lu les post à ce sujet mais je n'ai trouvé aucune solution valable pour mon problème ... ai-je manqué quelque chose ??
    Merci d'avance

    phpMyAdmin 2.2.3
    MySQL 5.0.21

  2. #2
    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 023
    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 023
    Points : 23 735
    Points
    23 735
    Par défaut
    Bonjour,

    Le moteur de ta seconde table est MyISAM. Essaie de le passer en InnoDB...
    En plus, tu as une virgule en trop après la déclaration de la dernière clef de ta deuxième table...

    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

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 65
    Points : 50
    Points
    50
    Par défaut MERCI
    MERCI Ced

    la virgule est une erreur d'un copié-collé pour le message donc pas d'erreur sur ca mais effectivement en passant ma table en InnoDB ca marche, ma table était également en InnoDB dans mon autre base.

    Encore merci pour cette réponse très rapide

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

Discussions similaires

  1. [MySQL] Erreur "#1005 - Can't create table (errno: 150)"
    Par R3MIX dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/02/2012, 23h48
  2. #1005 - Can't create table (errno: 150)
    Par teophane dans le forum Requêtes
    Réponses: 6
    Dernier message: 05/12/2011, 09h53
  3. #1005 - Can't create table (errno: 121)
    Par onizuka_metal dans le forum Requêtes
    Réponses: 4
    Dernier message: 23/06/2010, 16h52
  4. debutant:can't create table errno 121
    Par colocolo dans le forum Requêtes
    Réponses: 4
    Dernier message: 10/04/2009, 18h10
  5. Réponses: 1
    Dernier message: 28/08/2008, 09h33

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