Maison >base de données >tutoriel mysql >Comment puis-je vérifier de manière fiable l'existence de colonnes dans une table MySQL ?

Comment puis-je vérifier de manière fiable l'existence de colonnes dans une table MySQL ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-18 03:07:10588parcourir

How Can I Reliably Check for Column Existence in a MySQL Table?

Déterminer l'existence d'une colonne dans une table MySQL

Dans MySQL, vérifier la présence d'une colonne dans une table peut être un peu déroutant par rapport à d'autres systèmes de bases de données. La méthode couramment tentée :

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS 
           WHERE TABLE_NAME='prefix_topic' AND column_name='topic_last_update') 
BEGIN 
ALTER TABLE `prefix_topic` ADD `topic_last_update` DATETIME NOT NULL;
UPDATE `prefix_topic` SET `topic_last_update` = `topic_date_add`;
END;

semble échouer.

Cependant, une solution fiable implique l'utilisation de la commande SHOW COLUMNS :

SHOW COLUMNS FROM `table` LIKE 'fieldname';

Implémentation PHP

Pour déterminer l'existence d'une colonne en PHP, vous pouvez utiliser mysql_num_rows() function :

$result = mysql_query("SHOW COLUMNS FROM `table` LIKE 'fieldname'");
$exists = (mysql_num_rows($result))?TRUE:FALSE;

Cette approche vous permet de vérifier rapidement la présence d'une colonne spécifique dans une table MySQL, garantissant ainsi la bonne gestion des colonnes inexistantes.

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!

Déclaration:
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