【PHP快速上手(十四)】

目录

  • PHP快速上手(十四)
    • PHP 中常用数据库操作
      • 使用 WHERE 子句进行条件查询
      • 使用 ORDER BY 子句进行排序
      • 使用 UPDATE 语句更新数据
      • 使用 DELETE 语句删除数据
      • 执行事务
      • 总结

PHP快速上手(十四)

PHP 中常用数据库操作

当使用 PHP 中的 MySQL 数据库时,经常需要使用 WHERE、ORDER BY、UPDATE 和 DELETE 这些关键字来对数据库进行查询、排序、更新和删除操作。下面将详细介绍这些关键字在 PHP 中的使用方法:

使用 WHERE 子句进行条件查询

WHERE 子句用于指定条件,以过滤查询结果。

php 复制代码
// 连接数据库
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// 构建 SQL 查询
$sql = "SELECT * FROM users WHERE age > 18";

// 执行查询
$result = mysqli_query($conn, $sql);

// 处理结果集
if (mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_assoc($result)) {
        echo "Name: " . $row["name"] . " - Age: " . $row["age"] . "<br>";
    }
} else {
    echo "0 results";
}

// 关闭连接
mysqli_close($conn);

使用 ORDER BY 子句进行排序

ORDER BY 子句用于按指定的列对结果集进行排序。

php 复制代码
// 构建 SQL 查询
$sql = "SELECT * FROM users ORDER BY age DESC";

// 执行查询...

使用 UPDATE 语句更新数据

UPDATE 语句用于更新表中的数据。

php 复制代码
// 构建 SQL 查询
$sql = "UPDATE users SET age = 20 WHERE name = 'John'";

// 执行更新操作...

使用 DELETE 语句删除数据

1.使用 MySQLi 删除数据(面向过程)

php 复制代码
$sql = "DELETE FROM users WHERE name='John Doe'";
if (mysqli_query($conn, $sql)) {
    echo "Record deleted successfully";
} else {
    echo "Error deleting record: " . mysqli_error($conn);
}

2.使用 PDO 删除数据

php 复制代码
$sql = "DELETE FROM users WHERE name=:name";
$stmt = $conn->prepare($sql);
$stmt->bindParam(':name', $name);

$name = "John Doe";
$stmt->execute();

执行事务

php 复制代码
$conn->begin_transaction();
$sql1 = "INSERT INTO table1 (name) VALUES ('Alice')";
$sql2 = "UPDATE table2 SET status='completed' WHERE id=1";
$conn->query($sql1);
$conn->query($sql2);
$conn->commit();

总结

通过使用 WHERE、ORDER BY、UPDATE 和 DELETE 这些关键字,你可以对 MySQL 数据库执行更加灵活的查询、排序、更新和删除操作。在 PHP 中,通过构建合适的 SQL 查询并执行它们,可以方便地操作数据库中的数据。务必谨慎使用 UPDATE 和 DELETE 操作,确保操作的准确性和安全性。

相关推荐
damoluomu1 天前
挑 PHP CMS 之前,先学会看它的协议
php
小羊没烦恼!1 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
伞伞悦读1 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
C语言小火车1 天前
C/C++ 为什么需要编译器?
开发语言·c++
霍霍的袁1 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
孙启超1 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust
此生决int1 天前
深入理解C++系列(20)——C++11(下)
开发语言·c++
CoderYanger1 天前
A.每日一题:835. 图像重叠
java·开发语言·程序人生·leetcode·面试·职场和发展·学习方法
伞伞悦读1 天前
【第37期】Python JSON 与配置详解:序列化、反序列化、嵌套结构和配置文件
开发语言·python·json
CCCCCCCCharlie1 天前
Linux进程控制四大核心操作
linux·开发语言