【PHP快速上手(十四)】

news/2024/5/24 12:13:21/ 标签: php, 开发语言, web
webkit-tap-highlight-color: rgba(0, 0, 0, 0);">

目录

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


http://www.ppmy.cn/news/1434570.html

相关文章

2024/4/19学习笔记 vector模拟实现(2)

本次学习重点 1.迭代器区间构造和size_t n 构造 2.string扩容问题 3.erase的缺陷 1.迭代器区间构造和size_t n 构造 vector支持用一段迭代器区间构造&#xff0c;也可以支持任意类型的迭代器区间&#xff0c;所以要写成函数模板 template <class InputIterator> ve…

VUE-配置-流程

VUE-配置-流程 ---1---.安装 NVM: ---2---.用NVM:安装node.js &#xff1a; 修改源&#xff1a; nvm root 命令&#xff0c;可以查看nvm的安装根路径在那个文件夹 root地址&#xff0c;找到setting.txt文件并打开 复制粘贴以下代码&#xff0c; 保存完成nvm源修改&#xff…

MATLAB初学者入门(8)—— 动态规划

动态规划是一种数学方法&#xff0c;用于解决具有递归结构的决策问题&#xff0c;特别是那些涉及顺序决策的问题。在MATLAB中实现动态规划&#xff0c;可以通过定义状态变量、决策变量、状态转移方程以及目标函数来完成。以下是具体的案例分析。 案例分析&#xff1a;项目资源…

Oracle使用内部包自定义创建表空间和用户

如果之前有类似的表空间,可以使用dbms自动生成对应的表空间和数据文件 select dbms_metadata.get_ddl(TABLESPACE,ts.tablespace_name) from dba_tablespaces ts; 可以使用类似的 SQL> set echo off SQL> spool /data/logs/create_tablespace.log SQL> select dbms…

SqL--DCL数据控制语言

文章目录 数据控制语言用户角色 赋权收权删除用户自定义角色 数据控制语言 用户 用户&#xff1a;用来登录数据库的账号 需要有权限的用户或者管理员用户system 创建用户&#xff1a; 语法&#xff1a; CREATE USER 用户名 IDENTIFIED BY 密码;注意&#xff1a;1.此时的用户…

浅析Java中的LinkedList和ArrayList特点和底层

本期经验 LinkedList适合于删除和插入元素的操作&#xff0c;对首元素和尾元素的删除和修改插入极好&#xff0c;ArrayList适合于元素的修改和查询。 LinkedList LinkedList的底层使用双向链表来写&#xff0c;这导致其每次查询和修改元素都必须从首元素开始以此往下找&…

.NET 基于Socket中转WebSocket

前言 针对IOS App Proxy Server无法直连WebSocket&#xff0c;建立 Socket中转端。 WebSocket 端&#xff1a; WebSocket 端用于实现实时通信功能。 WebSocket 端通过 WebSocket 协议与中转端通信&#xff0c;中转端可以通过 WebSocket 或其他传输协议与 WebSocket 端建立连…

Pytorch或Tensorflow 深度学习库安装 (简易版)

Tensorflow 2.X安装 0、 pytorch 支持 conda虚拟环境 cuda 和 cudnn1、创建conda环境2、测试GPU是否可用3、在机器上安装cuda 和 cudnnCUDA 安装cudnn 安装 0、 pytorch 支持 conda虚拟环境 cuda 和 cudnn 如果只用pytorch&#xff0c; 只需在虚拟环境安装cuda 和 cudnn即可&am…

JavaScript 模块导出示例

JavaScript 模块导出示例说明 在 JavaScript 中&#xff0c;我们可以通过 export 关键字将模块中的功能导出&#xff0c;以供其他模块使用。导出可以是单个默认值&#xff0c;也可以是多个命名值。本文将分别介绍导出单个值和导出多个值的示例说明。 导出单个值 当模块中只有…

MySQL你想知道序列当前生成的值,你可以使用SHOW TABLE STATUS命令或者查询information_schema数据库

在MySQL中&#xff0c;如果你想知道序列当前生成的值&#xff08;例如&#xff0c;自增主键的当前值&#xff09;&#xff0c;你可以使用SHOW TABLE STATUS命令或者查询information_schema数据库。 使用SHOW TABLE STATUS命令&#xff1a; 这个命令可以显示关于表的各种信息&…

AI助力科研创新与效率双提升:ChatGPT深度科研应用、数据分析及机器学习、AI绘图与高效论文撰写

2022年11月30日&#xff0c;可能将成为一个改变人类历史的日子——美国人工智能开发机构OpenAI推出了聊天机器人ChatGPT3.5&#xff0c;将人工智能的发展推向了一个新的高度。2023年4月&#xff0c;更强版本的ChatGPT4.0上线&#xff0c;文本、语音、图像等多模态交互方式使其在…

MySQL数据库精讲001——概述

MySQL数据库精讲001——概述 文章目录 MySQL数据库精讲001——概述1.1 安装1.1.1 版本1.1.2 安装一、下载二、解压三、配置1. 添加环境变量2. 初始化MySQL3. 注册MySQL服务4. 启动MySQL服务5. 修改默认账户密码 四、登录MySQL五、卸载MySQL 1.1.3 连接1.1.4 企业使用方式(了解)…

Tomcat服务器的优化经验

对于优化Tomcat服务器的经验&#xff0c;以下是一些常见的做法和建议&#xff1a; **调整内存配置&#xff1a;**Tomcat服务器的性能很大程度上取决于内存的配置。确保为Tomcat分配足够的堆内存和非堆内存&#xff0c;以避免OutOfMemoryError等内存相关的问题。可以通过编辑Tom…

实验4 数字频率计

实验目的&#xff1a; 1、使用铆孔U7输出一个脉冲&#xff0c;频率不定。 2、使用铆孔V7测量脉冲频率&#xff0c;并在数码管上显示。 实验内容及步骤&#xff1a; 设计原理 测量频率的方法有很多&#xff0c;按照其工作原理分为无源测量法、比较法、示波器法和计数法等。…

HOT100与剑指Offer

文章目录 前言一、70. 爬楼梯&#xff08;HOT100&#xff09;二、118. 杨辉三角&#xff08;HOT100&#xff09;总结 前言 一个本硕双非的小菜鸡&#xff0c;备战24年秋招&#xff0c;计划刷完hot100和剑指Offer的刷题计划&#xff0c;加油&#xff01; 根据要求&#xff0c;每…

椭圆曲线密码学(ECC)基本介绍和总结

背景 ECC英文全称"Elliptic Curve Cryptography"&#xff0c;其背后的密码学原理或者说安全性&#xff0c;是基于椭圆曲线离散对数问题&#xff08;Elliptic Curve Discrete Logarithm Problem&#xff0c;ECDLP&#xff09;。ECC密码学被普遍认为是RSA密码系统的接…

Spring-IOC之组件扫描

版本 Spring Framework 6.0.9​ 1. 前言 通过自动扫描&#xff0c;Spring 会自动从扫描指定的包及其子包下的所有类&#xff0c;并根据类上的特定注解将该类装配到容器中&#xff0c;而无需在 XML 配置文件或 Java 配置类中逐一声明每一个 Bean。 支持的注解 Spring 支持一系…

001 redis高并发减库存

文章目录 释放锁加lua脚本String lockValue&#xff08;唯一标识符作为锁的值&#xff09;lua脚本无String lockValue&#xff08;唯一标识符作为锁的值&#xff09;无Lua脚本加锁的过期时间防死锁无lockValue代码 lockValue加了lockValue无lua脚本代码加了lockValue加了lua脚本…

工厂方法模式设计实验

【实验内容】 楚锋软件公司欲开发一个系统运行日志记录器&#xff08;Logger&#xff09;。该记录器可以通过多种途径保存系统的运行日志&#xff1a;例如通过文件记录或数据库记录&#xff0c;用户可以通过修改配置文件灵活地更换日志记录方式。在设计各类日志记录器时&#…

【ZZULIOJ】1078: a+b(多实例测试1)(Java)

目录 题目描述 输入 输出 样例输入 Copy 样例输出 Copy 提示 code 题目描述 计算AB 输入 输入第1行为一个整数n(1≤n≤10)&#xff0c;代表测试的组数。 下面有n组测试数据&#xff0c;每组1行&#xff0c;为2个整数&#xff0c;为A, B。 输出 对每行输入&#xff…