📜  php mysql 如果存在 - PHP (1)

📅  最后修改于: 2023-12-03 15:33:30.367000             🧑  作者: Mango

PHP MySQL 如果存在

简介

在开发 Web 应用时,经常需要在 MySQL 数据库中进行查询、插入、更新和删除操作。通常情况下,我们使用 PHP 作为服务器端脚本语言,并使用 MySQL 作为 Web 应用的数据库。

在进行以上操作时,我们常常需要判断某个数据表或某个记录是否存在。本文将阐述如何使用 PHP 和 MySQL 进行判断。

判断数据表是否存在
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

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

// 检测连接是否成功
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

// 检测数据表是否存在
$tableName = "myTable";
$sql = "SHOW TABLES LIKE '".$tableName."'";
$result = $conn->query($sql);

if($result->num_rows == 1) {
    echo "Table exists";
}
else {
    echo "Table does not exist";
}

$conn->close();
?>

以上代码中,先使用 SHOW TABLES LIKE 语句查询数据表是否存在,若存在则返回一行,否则返回空集。使用 $result->num_rows 判断返回结果的行数是否为 1,即可判断数据表是否存在。

判断记录是否存在
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

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

// 检测连接是否成功
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

// 检测记录是否存在
$tableName = "myTable";
$column = "column1";
$value = "value1";
$sql = "SELECT COUNT(*) AS count FROM ".$tableName." WHERE ".$column."='".$value."'";
$result = $conn->query($sql);
$row = $result->fetch_assoc();

if($row['count'] > 0) {
    echo "Record exists";
}
else {
    echo "Record does not exist";
}

$conn->close();
?>

以上代码中,使用 SELECT COUNT(*) 语句查询符合条件的记录数,使用 $row['count'] 获取记录数。若记录数大于 0,即可判断记录是否存在。

结论

本文介绍了如何使用 PHP 和 MySQL 进行数据表和记录的存在性判断。通过本文的学习,相信读者已经了解了这方面的基本知识。