Maison > base de données > tutoriel mysql > le corps du texte

Impossible de créer la table 'nom_table' (numéro d'erreur : 150) - Comment résoudre l'erreur MySQL : Impossible de créer la table, numéro d'erreur : 150

WBOY
Libérer: 2023-10-05 09:09:11
original
1204 Les gens l'ont consulté

Can't create table 'table_name' (errno: 150) - 如何解决MySQL报错:无法创建表,错误编号:150

Impossible de créer la table 'nom_table' (errno : 150) - Comment résoudre l'erreur MySQL : Impossible de créer la table, numéro d'erreur : 150, des exemples de code spécifiques sont nécessaires

Lorsque vous utilisez la base de données MySQL, vous rencontrerez parfois créer un problème de table. L'un des problèmes courants est que la table ne peut pas être créée avec le numéro d'erreur 150. Cette erreur indique généralement une erreur de contrainte de clé étrangère lors de la création de la table. Cet article explique comment résoudre ce problème et fournit des exemples de code spécifiques.

Dans MySQL, les clés étrangères sont utilisées pour établir des relations entre les tables. Lorsque nous utilisons des contraintes de clé étrangère lors de la création d'une table, si les conditions de clé étrangère ne sont pas remplies, la table ne peut pas être créée et l'erreur numéro 150 se produira.

La première étape pour résoudre ce problème est de vérifier si les types de champs et les contraintes de la table associée sont cohérents. Les champs associés par la clé étrangère doivent avoir le même type de données et les mêmes contraintes pour établir une relation. Voici un exemple qui montre comment créer deux tables et établir une relation de clé étrangère :

-- 创建部门表
CREATE TABLE department (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);

-- 创建员工表
CREATE TABLE employee (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    department_id INT,
    FOREIGN KEY (department_id) REFERENCES department(id)
);
Copier après la connexion

Dans l'exemple ci-dessus, nous avons créé deux tables : la table département et la table employé. Le champ Department_id de la table Employee est une clé étrangère qui fait référence au champ ID de la table Department. Grâce au mot-clé FOREIGN KEY et à la clause REFERENCES, nous établissons une relation de clé étrangère.

Si vous rencontrez l'erreur numéro 150 lors de la création d'une table, la raison la plus courante est que les types de champs ou les contraintes associés à la clé étrangère ne correspondent pas. Par exemple, si le champ Department_id de la table Employee est de type INT et que le champ ID de la table Department est de type VARCHAR, ce problème se produira. Nous devons nous assurer que les types de champs et les contraintes sont cohérents pour réussir à créer la table.

En outre, d'autres situations peuvent déclencher l'erreur numéro 150. Voici quelques problèmes courants et solutions :

  1. Ordre des tables : si vous essayez d'établir une relation de clé étrangère lors de la création d'une table, mais que la table référencée n'a pas encore été créée, l'erreur numéro 150 se produira. La solution consiste à créer d’abord la table référencée, puis à créer la table qui la référence.
  2. Jeu de caractères et classement : si le jeu de caractères et le classement de la table associée sont incohérents, l'erreur numéro 150 sera également provoquée. La solution consiste à garantir que le jeu de caractères et le classement des tables associées sont identiques.
  3. Clé primaire de champ : Si le champ référencé lors de la création d'une clé étrangère n'est pas une clé primaire, cela provoquera également l'erreur numéro 150. Assurez-vous que les champs référencés sont des clés primaires et ont le même type de données.

Pour résumer, l'erreur numéro 150 indique généralement une erreur de contrainte de clé étrangère qui se produit lorsque la table ne peut pas être créée. La clé pour résoudre ce problème est de vérifier si les types de champs et les contraintes des tables associées sont cohérents et de s'assurer que l'ordre de création des tables et les paramètres de clé primaire des champs sont corrects. Si le problème persiste, examinez et déboguez attentivement le code pour rechercher d'autres causes possibles de l'erreur.

J'espère que les exemples de code et les solutions fournis dans cet article pourront vous aider à résoudre le problème de l'erreur MySQL : Impossible de créer une table, erreur numéro 150. Lorsque vous écrivez et déboguez votre code, veillez à examiner et vérifier soigneusement la structure et les relations de vos tables pour vous assurer que les contraintes de clé étrangère sont respectées. Si vous avez d'autres questions, veuillez vous référer à la documentation officielle de MySQL ou consulter des experts concernés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal