我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【MySQL进阶之路丨第八篇】MySQL数据的插入及查询

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【MySQL进阶之路丨第八篇】MySQL数据的插入及查询

引言

在这里插入图片描述

✒️在上一篇中我们介绍了数据表的创建和删除;在开发中,了解数据库中数据的运行方式、运行逻辑是十分重要的。
✒️这一篇我们使用命令行方式来帮助读者掌握MySQL数据的插入及查询。

⚽上一篇链接:MySQL | 数据表的创建与删除


【MySQL进阶之路丨第八篇】MySQL数据的插入及查询

1️⃣MySQL数据插入

在MySQL数据库中,使用 INSERT INTO 语句来插入数据。

而INSERT INTO语法有两种常见的格式,是需要我们掌握的:

❄️1. 插入单行数据:

INSERT INTO 表名 (1,2,3, ...) VALUES (1,2,3, ...);

例如,要向名为 “users” 的表中插入一条记录,包含id、name和email字段:

INSERT INTO users (id, name, email) VALUES (1, 'John', 'john@example.com');

注意:值与列的数据类型要相一致,我们不能在id列插入字符串,这是不合法的。

❄️2. 插入多行数据:

INSERT INTO 表名 (1,2,3, ...) VALUES (1,2,3, ...), (1,2,3, ...), ...;

例如,要向名为 “users” 的表中插入多条记录:

INSERT INTO users (id, name, email) VALUES (1, 'John', 'john@example.com'),(2, 'Jane', 'jane@example.com'),(3, 'Mike', 'mike@example.com');

这两种语法可以根据具体情况进行选择和使用。

❄️此外,还可以使用SELECT语句将查询结果插入到表中:

INSERT INTO 表名 (1,2,3, ...)SELECT 查询语句;

例如,将另一个表中符合条件的记录插入到名为 “users” 的表中:

INSERT INTO users (id, name, email)SELECT id, name, email FROM 另一个表 WHERE 条件;

再次提醒,插入数据时需要确保符合表结构和约束条件,否则可能会导致插入失败。

命令行插入

插入数据的方式有两种,一种是命令行插入,另一种是PHP脚本插入。

⚽命令行插入会比PHP脚本插入更为简单,我们举个例子:

现在有一个class表,包含 id、学生名字和学生班级字段

在这里插入图片描述

🗺️如果要插入张三1班、李四2班、王五3班,我们可以分三次插入单行数据:

在这里插入图片描述
回显如下:

在这里插入图片描述

🗺️我们也可以一次性插入多行数据:

INSERT INTO class (id, name, class)VALUES  (1, '张三', '一班'),  (2, '李四', '二班'),  (3, '王五', '三班');

在这里插入图片描述

回显如下:

在这里插入图片描述

⛵我们还可以使用SELECT语句将a表的数据插入到class表中:

INSERT INTO class (id, name, class)SELECT id, name, class FROM a;

在这里插入图片描述

可以看到数据插入成功:

在这里插入图片描述

PHP脚本插入

⚽我们可以使用PHP中的 mysqli_query() 函数 来执行 SQL INSERT INTO命令从而插入数据

⛵语法如下:

mysqli_query(connection,query,resultmode);

⛵参数说明:

connection: MySQL 数据库连接对象。可以使用 mysqli_connect() 函数创建连接,或者使用已经建立的连接对象。query: 要执行的 SQL 查询语句。resultmode(可选): 结果模式,指定查询结果的返回方式,默认为 MYSQLI_STORE_RESULT。

举个例子:

// 创建数据库连接$conn = mysqli_connect('localhost', 'root', 'qiushuo', 'mysqlpractice');// 检查连接是否成功if (!$conn) {    die("连接数据库失败: " . mysqli_connect_error());}// 要插入的数据$id = 4;$name = '王二';$class = '四班';// 构造插入语句$query = "INSERT INTO class (id, name, class)          VALUES ($id, '$name', '$class')";// 执行插入语句$result = mysqli_query($conn, $query);// 检查插入是否成功if ($result) {    echo "数据插入成功!";} else {    echo "数据插入失败: " . mysqli_error($conn);}// 关闭数据库连接mysqli_close($conn);?>

运行该文件后,数据即可被插入到class表中。

该种方法读者可不用掌握,了解即可。


2️⃣MySQL数据查询

接着我们学习MySQL命令行数据查询

MySQL 数据库使用SQL SELECT语句来查询数据。

查询数据基本的 SELECT 语法:

SELECT column1, column2, ... FROM table_name;

通用的 SELECT 语法:

SELECT column_name,column_nameFROM table_name[WHERE Clause][LIMIT N][ OFFSET M]

⚽结构说明:

  • column_name:列名,表示你要选择的数据列。
  • table_name:表名,表示你要从哪个数据表中查询数据。
  • WHERE Clause(可选):条件子句,用于筛选满足特定条件的行。你可以使用比较运算符和逻辑运算符来构建条件表达式。
  • LIMIT N(可选):限制返回的行数为 N 条。
  • OFFSET M(可选):从结果集中的第 M 行开始返回数据。

⚽以下是一些示例说明:

  1. 查询指定列的数据⚓:

    SELECT column1, column2FROM table_name;

    这会返回 table_name 表中 column1 和 column2 列的所有行。

例如我们查询class表中name和class列:

   SELECT name, class   FROM class;

返回结果:

在这里插入图片描述

  1. 带有 WHERE 子句的条件查询⚓:

    SELECT column1, column2FROM table_nameWHERE condition;

    在 WHERE 子句中添加条件表达式,筛选出满足条件的行。

例如我们查询仅在二班的学生:

SELECT id,name,classFROM classWHERE class='二班';

返回结果:

在这里插入图片描述

  1. 带有 LIMIT 子句的限制行数查询⚓:

    SELECT column1, column2FROM table_nameLIMIT 10;

    这将返回 table_name 表中的前 10 行数据。

例如我们仅查询前两行数据:

SELECT id,name,classFROM classLIMIT 2;

返回结果:

在这里插入图片描述

  1. 带有 OFFSET 子句的分页查询⚓:

    SELECT column1, column2FROM table_nameLIMIT 10 OFFSET 20;

    这会返回 table_name 表中从第 21 行开始的 10 行数据,即返回结果集的第 21 到 30 行。

我们也可以用这种方法查询第一到第三行

SELECT id, name,classFROM classLIMIT 3 OFFSET 0;

在这里插入图片描述


3️总结

以上为 【MySQL进阶之路丨第八篇】MySQL数据的插入及查询,带领读者学习数据的插入及查询原理,通过具体实操实现对MySQL数据库的深度理解。

后续将分享 【MySQL进阶之路丨第九篇】一文带你精通MySQL子句 ✔️

在这里插入图片描述
我是秋说,我们下次见😉。

来源地址:https://blog.csdn.net/2301_77485708/article/details/132618793

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【MySQL进阶之路丨第八篇】MySQL数据的插入及查询

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

目录