【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 操作,确保操作的准确性和安全性。

相关推荐
你挚爱的强哥6 分钟前
【exportExcel】单纯靠js不用任何其他第三方插件导出xls格式文件
开发语言·javascript·ecmascript
Hello_Damon_Nikola20 分钟前
AC7911从入门到精通
开发语言·嵌入式硬件·物联网·php
worxfr25 分钟前
Go 并发控制:从 Channel 方向约束到实战模式
开发语言·后端·golang
带鱼吃猫30 分钟前
预处理器:宏、运算符与条件编译
c语言·开发语言
小小龙学IT38 分钟前
C++ std::vector 底层实现深度解析:内存布局、扩容策略、移动语义与迭代器失效
开发语言·c++·算法
码匠许师傅1 小时前
【C++ 面试真题】聊聊 volatile 和 mutable
开发语言·c++·面试
(Charon)1 小时前
【C++】线程安全队列(二):生产者消费者模型与 condition_variable 阻塞等待
c语言·开发语言·c++
liwulin05061 小时前
【PYTHON】使用Selenium + ChromeDriver以及XPATH语法
开发语言·python·selenium
JavaPub-rodert2 小时前
我又把自己的 Go 后台管理系统升级了一遍:文件管理、2GB 上传、私有文件预览、Docker 镜像全安排上了
开发语言·docker·golang·shiyuadmin
动力 continue2 小时前
Python 元类与异常类:类的“制造工厂”与“报错定制师”
开发语言·python·制造