Maison >base de données >tutoriel mysql >Comment puis-je rechercher et créer de manière fiable une colonne dans MySQL ?
Vérification de l'existence d'une colonne dans les tables MySQL
Déterminer la présence d'une colonne particulière dans une table MySQL est une tâche fondamentale dans la programmation de bases de données. Cependant, comparée à d'autres systèmes de bases de données relationnelles, l'approche de MySQL concernant cette requête peut prêter à confusion.
Considérez la tentative de requête suivante, conçue pour rechercher et créer une colonne si elle est manquante :
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;
Malheureusement, ce code échoue en raison de la gestion par MySQL des instructions conditionnelles impliquant des opérations de manipulation de données.
Un outil fiable Solution
Pour rechercher et créer de manière fiable une colonne dans MySQL, essayez cette approche alternative :
SHOW COLUMNS FROM `table` LIKE 'fieldname';
Cette requête récupère une ligne uniquement si le nom de champ spécifié existe dans la table . Vous pouvez ensuite utiliser les résultats pour prendre des décisions dans votre code.
Par exemple, en PHP :
$result = mysql_query("SHOW COLUMNS FROM `table` LIKE 'fieldname'"); $exists = (mysql_num_rows($result))?TRUE:FALSE;
Conclusion
Vérifier et la manipulation des colonnes dans MySQL nécessite une approche différente de celle de nombreux autres systèmes de bases de données. En utilisant la requête SHOW COLUMNS, vous pouvez garantir une validation et une manipulation fiables des colonnes dans vos applications MySQL.
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!