Maison > base de données > tutoriel mysql > Pourquoi mon instruction SQL INSERT entraîne-t-elle une erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs au niveau de la ligne » ?

Pourquoi mon instruction SQL INSERT entraîne-t-elle une erreur « Le nombre de colonnes ne correspond pas au nombre de valeurs au niveau de la ligne » ?

Susan Sarandon
Libérer: 2024-12-08 15:43:10
original
172 Les gens l'ont consulté

Why Does My SQL INSERT Statement Result in a

Comprendre les erreurs de non-concordance du nombre de colonnes dans SQL

Lors du remplissage d'une table de base de données avec des données à l'aide d'instructions SQL INSERT, l'erreur « Le nombre de colonnes ne "ne correspond pas au nombre de valeurs sur la ligne" peut être frustrant. Ce problème survient lorsque le nombre de colonnes dans l'instruction INSERT ne correspond pas au nombre de colonnes dans la table de destination.

Dans votre cas, lorsque vous tentez d'insérer des données dans la table wp_posts à l'aide de l'instruction suivante :

INSERT INTO `wp_posts` VALUES(5, 5, '2005-04-11 09:54:35', '2005-04-11 17:54:35'
Copier après la connexion

vous recevez cette erreur car la table wp_posts a plus de colonnes que le nombre de valeurs que vous avez spécifié dans l'instruction INSERT. La première valeur, 2781,3 dans votre exemple, représente correctement la ligne 2781 et la colonne 3 du tableau. Cependant, la deuxième valeur, 5,5, implique un nombre de lignes et de colonnes de 5, mais le tableau comporte probablement plus de colonnes.

Pour résoudre ce problème, vous devez fournir des valeurs pour toutes les colonnes du tableau lorsque insérer un nouvel enregistrement. Vous pouvez le faire en spécifiant explicitement les noms de colonnes dans votre instruction INSERT :

INSERT INTO `wp_posts` (column_name1, column_name2, ...)
VALUES (1, 3, ...)
Copier après la connexion

Assurez-vous que les noms de colonnes que vous spécifiez correspondent à l'ordre des colonnes dans la définition de la table.

N'oubliez pas que Les instructions INSERT sont utilisées pour créer de nouveaux enregistrements dans une table, et non pour modifier ceux existants. Pour modifier des données dans des enregistrements existants, utilisez plutôt l'instruction UPDATE.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal