Maison >développement back-end >Problème PHP >Comment demander si un champ spécifié dans MySQL existe en php

Comment demander si un champ spécifié dans MySQL existe en php

PHPz
PHPzoriginal
2023-03-21 16:32:241687parcourir

En PHP, si nous voulons demander si un certain champ existe dans la table MySQL, nous pouvons utiliser les deux méthodes suivantes :

  1. Utilisez la commande DESC pour interroger les informations sur la structure de la table
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败:" . $conn->connect_error);
}

// 查询表结构信息
$sql = "DESC `myTable` `myColumn`;";
$result = $conn->query($sql);

// 检查结果是否存在
if ($result->num_rows > 0) {
    // 如果存在,则执行相应的操作
    echo "字段已存在";
} else {
    // 如果不存在,则执行相应的操作
    echo "字段不存在";
}

// 关闭连接
$conn->close();
?>

$ dans le code ci-dessus servername, $username, $password et $dbname représentent le nom du serveur de base de données, le nom d'utilisateur, le mot de passe et la base de données nom respectivement. myTable et myColumn représentent respectivement le nom de la table de la base de données et le nom du champ à interroger. Avant d'exécuter le code ci-dessus, veuillez vous assurer que la base de données et les tables correspondantes ont été créées. $servername$username$password$dbname 分别代表数据库服务器名称、用户名、密码和数据库名称。myTablemyColumn 分别代表数据库表名称和要查询的字段名称。在执行上述代码之前,请先保证已经创建好了相应的数据库和表。

  1. 使用 INFORMATION_SCHEMA 查询字段信息
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败:" . $conn->connect_error);
}

// 查询字段信息
$sql = "SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='" . $dbname . "' AND TABLE_NAME='myTable' AND COLUMN_NAME='myColumn';";
$result = $conn->query($sql);

// 检查结果是否存在
if ($result->num_rows > 0) {
    // 如果存在,则执行相应的操作
    echo "字段已存在";
} else {
    // 如果不存在,则执行相应的操作
    echo "字段不存在";
}

// 关闭连接
$conn->close();
?>

上述代码中的 $servername$username$password$dbname 分别代表数据库服务器名称、用户名、密码和数据库名称。myTablemyColumn

    Utilisez INFORMATION_SCHEMA pour interroger les informations du champ

    🎜🎜rrreee🎜$servername, $username, $password dans ce qui précède code et $dbname représentent respectivement le nom du serveur de base de données, le nom d'utilisateur, le mot de passe et le nom de la base de données. myTable et myColumn représentent respectivement le nom de la table de la base de données et le nom du champ à interroger. Avant d'exécuter le code ci-dessus, veuillez vous assurer que la base de données et les tables correspondantes ont été créées. 🎜🎜En général, le premier est plus concis que le second, mais les résultats de la requête du second sont plus détaillés et vous pouvez obtenir le type de champ, la longueur, la valeur par défaut et d'autres informations. Choisissez simplement de l'utiliser en fonction de la situation réelle. 🎜

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