Maison > Article > développement back-end > Comment demander si un champ dans MySQL existe en php
La méthode permettant à PHP de demander si un champ dans MySQL existe est la suivante : 1. Utilisez des instructions SQL pour interroger l'architecture de l'information, exécutez une commande "SHOW COLUMNS FROM" pour obtenir des informations sur toutes les colonnes de la table spécifiée, puis parcourez le noms de colonnes dans l'ensemble de résultats pour vérifier si le champ apparaît ; 2. Utilisez l'instruction de requête SELECT pour vérifier et essayez d'accéder au champ pour vérifier s'il existe, mais cela ne s'applique pas aux situations où les droits d'accès sont insuffisants.
Le système d'exploitation de ce tutoriel : système Windows 10, version php8.1.3, ordinateur Dell G3.
En php, vous pouvez utiliser les deux méthodes suivantes pour déterminer si un certain champ existe dans la table de la base de données MySQL.
Méthode 1 : utiliser des instructions SQL pour interroger l'architecture de l'information
Vous pouvez obtenir des informations sur toutes les colonnes de la table spécifiée en exécutant une commande "SHOW COLUMNS FROM", puis parcourir les noms de colonnes dans l'ensemble de résultats pour vérifier si le champ spécifié apparaît. Par exemple :
function checkColumnExist($column_name, $table_name, $mysqli_link) { $query = "SHOW COLUMNS FROM ".$table_name; $result = mysqli_query($mysqli_link, $query); if ($result !== false) { while ($row = mysqli_fetch_assoc($result)) { if (strtolower($row['Field']) === strtolower($column_name)) { return true; } } } return false; }
Cette fonction renverra une valeur booléenne indiquant si le nom de colonne spécifié existe dans la table spécifiée.
Méthode 2 : utilisez l'instruction de requête SELECT pour vérifier
Vous pouvez également lancer une requête de requête SELECT et essayer d'accéder au champ pour vérifier s'il existe. Notez que cette approche peut nécessiter plus de ressources et peut ne pas fonctionner dans toutes les situations (par exemple lorsque les droits d'accès sont insuffisants). Par exemple :
function checkColumnExist($column_name, $table_name, $mysqli_link) { $query = "SELECT `$column_name` FROM `$table_name` LIMIT 1"; $result = mysqli_query($mysqli_link, $query); return $result !== false; }
Cette fonction renverra également une valeur booléenne indiquant si le nom de colonne spécifié existe dans la table spécifiée.
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!