Maison >base de données >tutoriel mysql >Comment vérifier et ajouter de manière fiable les colonnes manquantes dans les tables MySQL ?

Comment vérifier et ajouter de manière fiable les colonnes manquantes dans les tables MySQL ?

DDD
DDDoriginal
2024-12-07 10:10:17857parcourir

How to Reliably Check for and Add Missing Columns in MySQL Tables?

Rechercher et créer des colonnes manquantes dans les tables MySQL

Dans MySQL, il n'est pas rare de devoir vérifier si une colonne spécifique existe dans une table et sinon, créez-le. Bien qu'il s'agisse d'une opération simple dans de nombreuses autres bases de données, MySQL a ses propres nuances.

La tentative de requête fournie :

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;

échoue en raison des limitations de MySQL. Cependant, il existe une méthode fiable pour vérifier l'existence d'une colonne :

SHOW COLUMNS FROM `table` LIKE 'fieldname';

En PHP :

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

Si la requête renvoie des lignes, la colonne existe ; sinon, ce n'est pas le cas. Avec ces informations, vous pouvez ensuite procéder à la création de la colonne selon vos besoins.

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