Rechercher : dans
Par :

#1005 - Can't create table (errno: 150)

Dernière réponse le 19 fév 2009 à 16:23:54 swatt, le 13 fév 2008 à 00:34:49 
 Signaler ce message aux modérateurs

Slt les programmeur,

J'ai un problème avec mon create table ci dessous, phpmyadmin me donne comme erreur:
#1005 - Can't create table '.\giggles\test.frm' (errno: 150)

J'ai chercher une solution sur les forums il y en avait mais j'y ai rien compris.

CREATE TABLE test
(
id_kids int(10) unsigned not null auto_increment,
description varchar(200) NULL,
description_fr varchar(200) NULL,
quantity smallint(4) unsigned NOT NULL default '1',
price decimal(6,2) unsigned NOT NULL default '0.00',
instock enum('y','n') NOT NULL default 'y',
visible enum('true','false') NOT NULL default 'true',
id_mat int(5) not null,
Primary Key (id_kids),
FOREIGN KEY(id_mat) REFERENCES kids(id_kids1)
)

Est ce qu'on peut m'aider merci.

Configuration: Windows Vista
Internet Explorer 7.0

Meilleures réponses pour « #1005 Can't create table (errno: 150) » dans :
SQL - Création de table VoirLe SQL, comportant un langage de définition de données (LDD), permet de créer des tables. Pour cela, il utilise le couple de mots clés CREATE TABLE. La création de tables Le création de tables se fait à l'aide du couple de mots-clés CREATE...

1

Reivax962, le 13 fév 2008 à 11:04:49

Bonjour,

Quel type de table souhaitais-tu créer ? il me semble que certains types gérés par MySql ne supportent pas les clés étrangères...

Xavier

Répondre à Reivax962

2

swatt, le 13 fév 2008 à 23:24:18

En faite je cré 2 tables la 1ère table est en relation avec la 2nd table par id.
La 1ère table s'appelle kids et la 2nd test.
id_kids1 est l'id de kids et j'ai mis 2 id à test id_mat et id_kids.

D'ou id_mat=id_kids1

J'espère que j'ai répondu à ta question

Répondre à swatt

3

Reivax962, le 14 fév 2008 à 14:16:52

En fait non ^^

Le type de table, c'est MyISAM, ou innoDB, ou d'autres...

Répondre à Reivax962

4

swatt, le 14 fév 2008 à 17:00:22

En moi j'ai essayé de rentré cette table dans ma base de donné via phpmyadmin par l'option sql il m'a pas demandé de choisir un type de table en particulier j'ai juste entré la table comme ci-dessus.

Répondre à swatt

5

Likide, le 6 jui 2008 à 03:36:37

Il est possible que le type(int(10)unsigned Not NULL, int(10) Not NULL,) du champ dans la table fille ne soit pas le meme que dans la table d'origine...

Répondre à Likide

6

 CrazyCat, le 19 fév 2009 à 16:23:54

Ce souci vient très fréquement de la définition de la FOREIGN KEY. id_mat et id_kids1 ne sont peut-être pas exactement du même type.

Répondre à CrazyCat