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!