Maison > Article > base de données > Impossible de créer la table 'nom_table' (numéro d'erreur : 139) - Comment résoudre l'erreur MySQL : Impossible de créer la table, numéro d'erreur : 139
Impossible de créer la table 'nom_table' (numéro d'erreur : 139) - Comment résoudre l'erreur MySQL : Impossible de créer la table, numéro d'erreur : 139, besoin d'exemples de code spécifiques
Lors du développement de bases de données, nous rencontrons souvent des exigences de création de table . Cependant, vous pouvez parfois rencontrer des erreurs lors de la création de tables dans MySQL, dont l'erreur numéro 139. Cet article explique comment résoudre ce problème et fournit des exemples de code spécifiques.
Tout d’abord, comprenons ce que signifie cette erreur. Lorsque MySQL ne parvient pas à créer une table, il renvoie un numéro d'erreur, où 139 signifie "Un champ dans la définition de la table a une longueur ou une précision non valide." En d’autres termes, la longueur ou le nombre de chiffres après la virgule décimale d’un champ du tableau que vous avez créé ne répond pas aux exigences.
Alors comment résoudre ce problème ? Voici quelques solutions :
Vérifiez le type et la longueur du champ dans la définition du tableau
Tout d'abord, vous devez vérifier le type et la longueur du champ que vous avez spécifiés lors de la création du tableau. Par exemple, si vous créez une table nommée « nom_table » et spécifiez un champ de type chaîne d'une longueur de 10 lors de la définition du champ, vous devez confirmer que la longueur de votre champ est correcte. Assurez-vous que la longueur de votre champ ne dépasse pas la limite du type de champ correspondant.
Voici un exemple de code :
CREATE TABLE `table_name` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(10), PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Vérification de la précision du champ
Une autre cause possible de l'erreur 139 est que la précision du champ est incorrecte. Si vous définissez un champ de type DECIMAL lorsque vous créez la table et spécifiez le nombre de chiffres après la virgule (par exemple, DECIMAL(10, 2)), assurez-vous que la valeur réelle de votre champ ne comporte pas plus de chiffres après la virgule. point décimal que vous avez défini dans le tableau, le nombre de chiffres spécifié dans .
Voici un exemple de code :
CREATE TABLE `table_name` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `price` DECIMAL(10, 2), PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Enfin, si vous rencontrez un problème qui ne peut pas être résolu, vous pouvez consulter la documentation officielle de MySQL ou demander de l'aide à la communauté MySQL. Il est possible qu'ils aient une explication et une solution plus approfondies à ce problème.
Pour résumer, lorsque vous rencontrez l'erreur numéro 139 lors de la création d'une table dans MySQL, vous devez vérifier soigneusement le type, la longueur et la précision du champ dans la définition de la table pour vous assurer qu'ils sont conformes aux spécifications. Si le problème persiste, vous pouvez envisager de vérifier si la version de MySQL que vous utilisez prend en charge le type et la longueur de champ que vous avez définis. J'espère que cet article pourra vous aider à résoudre l'erreur MySQL 139 et fournir des exemples de code pertinents.
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!