【必知必会的MySQL知识】③DML语言

这篇具有很好参考价值的文章主要介绍了【必知必会的MySQL知识】③DML语言。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录
  • 前言
  • 准备
  • 插入数据
    • 语法格式
    • 插入完整行数据
    • 插入多行数据
    • 将检索出来的数据插入表
  • 更新数据
    • 准备两张表
    • 语法
    • 实践操作
  • 删除数据
    • 语法
    • 实践操作
  • 小结

前言

前面的两篇文章中,我们已经对MySQL有了基本了解。
并且知道了怎么用工具连接数据库?怎么创建数据库?怎么创建表?
这一篇呢我们就来看看怎么在我们创建的表中插入数据、删除数据和修改数据。也就是上一篇文章中提到的DML 数据操作语言

准备

根据上一章所说的,我们创建一个db_xiezhr 数据库,并向数据库中添加一张用户信息表。

① 通过命令行建库,建表

mysql> create database if not exists db_xiezhr;
Query OK, 1 row affected (0.00 sec)
mysql> use db_xiezhr
Database changed
mysql> drop table if exists user_profile;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> CREATE TABLE `user_profile` 
				   (`id` int NOT NULL,
				   `device_id` int NOT NULL,
				   `user_name` varchar(100) NOT NULL ,
				   `gender` varchar(14) NOT NULL,
				   `age` int ,
				   `user_email` varchar(50) ,
				   `user_zip` varchar(10),
				   `university` varchar(32) NOT NULL,
				   `province` varchar(32)  NOT NULL,);
Query OK, 0 rows affected (0.01 sec)

② 当然了,我们可以通过上一篇文章中说到的工具之一建库、建表

这里以sqlyog工具为例,建立db_xiezhr数据库,并创建用user_profile户信息表

  • 建立db_xiezhr数据库
    【必知必会的MySQL知识】③DML语言
    【必知必会的MySQL知识】③DML语言
  • 创建用user_profile户信息表
    【必知必会的MySQL知识】③DML语言
    【必知必会的MySQL知识】③DML语言
    以上,我们数据库和数据表就都已经创建成功了

插入数据

语法格式

#方式一:
INSERT INTO 表名 VALUES(值,...);
#方式二:
INSERT INTO 表名(字段名,...) VALUES(值,...);
#方式三:
INSERT INTO 表名(字段名,...) SELECT (字段名,...) FROM 表名;

插入完整行数据

①简单写法

  • 存储到每个里表中的数据在VALUES子句中给出,值得顺序也必须要与定义时候的字段顺序一致,没有的值需要使用NULL。
  • 这种写法简单,但并不安全,应尽量避免使用。一旦表结构变化了,可能就会出问题
# 向user_profile用户信息表中添加一条数据
insert into user_profile 
values( 
	1,
	1,
	'张三',
	'male',
	'28',
	null,
	null,
	'北京大学',
	'BeiJing'
);

② 安全写法

  • 跟上面简单写法效果一样,往用户信息表中插入一条数据
  • 在表名后括号中明确给出了列名,在插入数据时,将用VALUES列表中的相应值填入对应的列名中。第一个列名对应第一个值,第二个列名对应第二个值......
  • 因为提供了列名,所以值也不需要按照表中的次序来插入。即使表结构变化了,sql语句也能正常执行。
  • 不需要插入的列user_email和user_zip 列,值也可以不用写出来了,也比较灵活
INSERT INTO `db_xiezhr`.`user_profile` (
  `id`,
  `device_id`,
  `user_name`,
  `gender`,
  `age`,
  `university`,
  `province`
) 
VALUES
  (
    1,
    1,
    '张三',
    'male',
    '28',
    '北京大学',
    'BeiJing'
  ) ;

注:

  • 不管使用哪种insert语法,都必须给出values的正确数目。
  • 如果不提供列名,则必须给每个列都提供一个值
  • 如果提供列名,则必须对每个写出的列提供一个值
  • 在insert语法中省略某列时,需要具备两个条件,一是该列被定义为允许NULL值二是表定义中给出了默认值

插入多行数据

这里你可能说我多写几条sql语句不就可以了么,哈哈,这也可以实现了么?

INSERT INTO `user_profile` (
  `id`,
  `device_id`,
  `user_name`,
  `gender`,
  `age`,
  `university`,
  `province`
) 
VALUES
  (
    2,
    2,
    '李四',
    'male',
    '36',
    '天津大学',
    'TianJin'
  ) ;
  
INSERT INTO `user_profile` (
  `id`,
  `device_id`,
  `user_name`,
  `gender`,
  `age`,
  `university`,
  `province`
) 
VALUES
  (
    3,
    3,
    '王五',
    'female',
    '25',
    '天津大学',
    'TianJin'
  ) ;  
  

但这里提供另一种语法,一条语句就可以完成


INSERT INTO `user_profile` (
  `id`,
  `device_id`,
  `user_name`,
  `gender`,
  `age`,
  `university`,
  `province`
) 
VALUES
  (
    2,
    2,
    '李四',
    'male',
    '36',
    '天津大学',
    'TianJin'
  ),
  (
    3,
    3,
    '王五',
    'female',
    '25',
    '天津大学',
    'TianJin'
  ) ;  
  

将检索出来的数据插入表

这里有两张表,一张是user_profile,数据如下
【必知必会的MySQL知识】③DML语言
一张表是tmp_user_profile,数据如下
【必知必会的MySQL知识】③DML语言
我们需要将tmp_user_profile 表中数据插入到user_profile 表中,可以通过如下脚本实现

INSERT INTO `user_profile` (
  `id`,
  `device_id`,
  `user_name`,
  `gender`,
  `age`,
  `university`,
  `province`
) 
SELECT 
  `id`,
  `device_id`,
  `user_name`,
  `gender`,
  `age`,
  `university`,
  `province` 
  FROM tmp_user_profile;

执行完上面脚本后,user_profile表中数据
【必知必会的MySQL知识】③DML语言

更新数据

准备两张表

  • 下面我们建两张表,一张表为 product 表,用来存放产品信息,其中有产品价格字段 saleprice;另外一张表是 product_price 表。
# 产品信息表product
mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+--------+
| id | productid | productname                                | saleprice | author |
+----+-----------+--------------------------------------------+-----------+--------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr |
|  2 | 10002     | 公众号XiezhrSpace【MySQL从入门到放弃】     |        99 | xiezhr |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr |
|  5 | 10005     | 公众号XiezhrSpace【Idea从入门到上瘾】      |       200 | xiezhr |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr |
+----+-----------+--------------------------------------------+-----------+--------+
6 rows in set (0.02 sec)

# 产品价格表product_price 
mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |  NULL |
|  2 | 10002     |  NULL |
|  3 | 10003     |  NULL |
|  4 | 10004     |  NULL |
|  5 | 10005     |  NULL |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)

语法

# 1、单表更新
UPDATE 表名 SET 列 = 值,... WHERE 查询条件;
# 2、根据一张表更新另一张表
# ① 使用update
UPDATE 
  表1 别名,
  表2 别名 
SET
  列 = 值,
  ...
WHERE 连接条件 AND 筛选条件 ;
# ②通过INNER JOIN
UPDATE
  表1 别名
INNER JOIN 表2 别名
ON 连接条件 AND 筛选条件
SET
  列 = 值,
  ...;
# ③ 通过LEFT JOIN
UPDATE
  表1 别名
LEFT JOIN  表2 别名
ON 连接条件 AND 筛选条件
SET
  列 = 值,
  ...;
# ③ 通过子查询
UPDATE
  表2 别名
SET 列 = (SELECT 表达式 FROM 表1 WHERE 连接条件 AND 筛选条件);
# 2、同时更新两张表
UPDATE
  表1
INNER JOIN 表2
ON 连接条件 AND 筛选条件
SET 表1.列=值1,
	表2.列=值2;

实践操作

① 将产品信息表product 中10001 号产品价格更新为999

mysql> UPDATE product t SET t.`saleprice` =999 WHERE t.`productid` = '10001';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+--------+
| id | productid | productname                                | saleprice | author |
+----+-----------+--------------------------------------------+-----------+--------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       999 | xiezhr |
|  2 | 10002     | 公众号XiezhrSpace【MySQL从入门到放弃】     |        99 | xiezhr |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr |
|  5 | 10005     | 公众号XiezhrSpace【Idea从入门到上瘾】      |       200 | xiezhr |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr |
+----+-----------+--------------------------------------------+-----------+--------+
6 rows in set (0.00 sec)

② 将 product_price 表中的价格字段 price 更新为 product 表中价格字段 price 的 80%。

# 使用“UPDATE table1 t1,table2,...,table n”的方式来多表更新
mysql> UPDATE product t1, product_price t2 SET t2.price = t1.`saleprice` * 0.8 WHERE t1.productid= t2.productId;
Query OK, 5 rows affected, 2 warnings (0.01 sec)
Rows matched: 5  Changed: 5  Warnings: 2

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  2 | 10002     |    79 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)

# 通过INNER JOIN
mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  2 | 10002     |    79 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)
#  通过LEFT JOIN
mysql> UPDATE product t1 LEFT JOIN product_price t2 ON t1.productid= t2.productid SET t2.price = t1.`saleprice` * 0.8 WHERE t1.productid='10001';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  2 | 10002     |  NULL |
|  3 | 10003     |  NULL |
|  4 | 10004     |  NULL |
|  5 | 10005     |  NULL |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)
# 通过子查询
mysql> UPDATE product_price t2 SET t2.price=(SELECT t1.`saleprice` *0.8 FROM product t1 WHERE t1.productid = t2.productid);
Query OK, 5 rows affected, 2 warnings (0.01 sec)
Rows matched: 6  Changed: 5  Warnings: 2

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  2 | 10002     |    79 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)

③ 同时更新两张表(正式开发中用得比较少)

  • 两张表做关联,同时更新了 product_price 表的 price 字段和 product 表的 author两个字段。
mysql> UPDATE product t1 INNER JOIN product_price t2 ON t1.productid= t2.productid SET t2.price = t1.`saleprice` * 0.8, t1.`author` = 'xiezhr001';
Query OK, 5 rows affected, 2 warnings (0.00 sec)
Rows matched: 10  Changed: 5  Warnings: 2

mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+-----------+
| id | productid | productname                                | saleprice | author    |
+----+-----------+--------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr001 |
|  2 | 10002     | 公众号XiezhrSpace【MySQL从入门到放弃】     |        99 | xiezhr001 |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr001 |
|  5 | 10005     | 公众号XiezhrSpace【Idea从入门到上瘾】      |       200 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr    |
+----+-----------+--------------------------------------------+-----------+-----------+
6 rows in set (0.00 sec)

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  2 | 10002     |    79 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)

删除数据

语法

# 1、单表删除 
DELETE FROM 表名 【WHERE 筛选条件 】;
# 2、多表删除(级联删除)
① 关联删除
DELETE 
  表1的别名,
  表2的别名 
FROM
  表1 别名,
  表2 别名 
WHERE 连接条件 AND 筛选条件 ;
② 内连接、左右连接删除
DELETE 
  表1的别名,
  表2的别名 
FROM
  表1 别名 
INNER | LEFT | RIGHT JOIN 表2 别名 ON 连接条件 
WHERE 筛选条件 ;

实践操作

① 单表删除

# 删除产品id为10005的产品信息
mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+-----------+
| id | productid | productname                                | saleprice | author    |
+----+-----------+--------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr001 |
|  2 | 10002     | 公众号XiezhrSpace【MySQL从入门到放弃】     |        99 | xiezhr001 |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr001 |
|  5 | 10005     | 公众号XiezhrSpace【Idea从入门到上瘾】      |       200 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr    |
+----+-----------+--------------------------------------------+-----------+-----------+
6 rows in set (0.00 sec)

mysql> delete from product where productid = '10005';
Query OK, 1 row affected (0.02 sec)

mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+-----------+
| id | productid | productname                                | saleprice | author    |
+----+-----------+--------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr001 |
|  2 | 10002     | 公众号XiezhrSpace【MySQL从入门到放弃】     |        99 | xiezhr001 |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr    |
+----+-----------+--------------------------------------------+-----------+-----------+
5 rows in set (0.00 sec)

② 多表级联删除文章来源地址https://www.toymoban.com/news/detail-431807.html

mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+-----------+
| id | productid | productname                                | saleprice | author    |
+----+-----------+--------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr001 |
|  2 | 10002     | 公众号XiezhrSpace【MySQL从入门到放弃】     |        99 | xiezhr001 |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr    |
+----+-----------+--------------------------------------------+-----------+-----------+
5 rows in set (0.00 sec)

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  2 | 10002     |    79 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
6 rows in set (0.00 sec)

mysql> DELETE  t1,  t2 FROM  product t1,  product_price t2 WHERE t1.`productid` = t2.`productid` AND t1.`productid` = '10002';
Query OK, 2 rows affected (0.01 sec)

mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+-----------+
| id | productid | productname                                | saleprice | author    |
+----+-----------+--------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr001 |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr    |
+----+-----------+--------------------------------------------+-----------+-----------+
4 rows in set (0.00 sec)

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
5 rows in set (0.00 sec)
mysql> select * from product;
+----+-----------+--------------------------------------------+-----------+-----------+
| id | productid | productname                                | saleprice | author    |
+----+-----------+--------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】    |       100 | xiezhr001 |
|  3 | 10003     | 公众号XiezhrSpace【快速上手Linux核心命令】 |        88 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】      |       150 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】  |       120 | xiezhr    |
+----+-----------+--------------------------------------------+-----------+-----------+
4 rows in set (0.00 sec)

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  3 | 10003     |    70 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
5 rows in set (0.00 sec)

mysql> DELETE   t1,  t2 FROM  product_price t2 INNER JOIN product t1 ON t1.`productid` = t2.`productid` WHERE t1.`productid` = '10003';
Query OK, 2 rows affected (0.01 sec)

mysql> select * from product;
+----+-----------+-------------------------------------------+-----------+-----------+
| id | productid | productname                               | saleprice | author    |
+----+-----------+-------------------------------------------+-----------+-----------+
|  1 | 10001     | 公众号XiezhrSpace【Oralce从入门到放弃】   |       100 | xiezhr001 |
|  4 | 10004     | 公众号XiezhrSpace【Java从入门到精通】     |       150 | xiezhr001 |
|  6 | 10006     | 公众号XiezhrSpace【如何快速搭建个人博客】 |       120 | xiezhr    |
+----+-----------+-------------------------------------------+-----------+-----------+
3 rows in set (0.00 sec)

mysql> select * from product_price;
+----+-----------+-------+
| id | productid | price |
+----+-----------+-------+
|  1 | 10001     |    80 |
|  4 | 10004     |   120 |
|  5 | 10005     |   160 |
|  6 | 1006      |  NULL |
+----+-----------+-------+
4 rows in set (0.00 sec)

小结

  • 这篇文章主要说了MySQL中单表多表的增删改,在update、delete 使用的时候一定要细心
  • 除非打算更新删除表中所有数据,否则绝对不要使用不带where子句的update或delete语句
  • 保证每个表都有主键
  • 在对update或delete语句使用where子句之前,先用select进行查询测试,保证过滤出来的记录是正确的;
  • update或delete语句执行前,尽量做好数据备份

到了这里,关于【必知必会的MySQL知识】③DML语言的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【必知必会的MySQL知识】mysql5.7安装教程

    下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下载zip免安装版,可以省去很多事 my.ini文件内容如下 以上配置文件说明 basedir--mysql目录 datadir--数据路径 port --端口 skip-grant-tables --刚开始跳过登陆校验 安装服务: 初始化数据库 登陆命令: 最后,我们当然不希望以后写

    2024年02月02日
    浏览(44)
  • 10个必知必会的VSCode实用快捷键

    掌握10个必知必会的VS Code实用快捷键,提高工作效率。 微信搜索关注《Python学研大本营》,加入读者群,分享更多精彩 代码编辑器Visual Studio Code(VS Code)是很多开发者日常使用的IDE,本文将分享一些实用的VS Code快捷键和技巧,可以帮助开发者节省大量时间。 Ctrl+D 能让用户

    2024年04月29日
    浏览(49)
  • 新手运维必知必会的常用技能或工具

    说到工具,在行外可以说是技能,在行内我们一般称为工具,就是运维必须要掌握的工具。 我就大概列出这几方面,这样入门就基本没问题了。 linux系统如果是学习可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习

    2024年02月07日
    浏览(42)
  • 什么是数字开发?关于数字开放必知必会的内容点

    数据开发的基础概念必知必会 数据开发是指将数据从不同的来源整合、清洗、转换、存储和分析的过程。数据开发的目的是为了让数据更加有用,以便于企业做出更好的决策。在本文中,我们将介绍数据开发的基本概念,包括数据仓库、ETL、数据建模、数据挖掘和数据可视化

    2023年04月24日
    浏览(47)
  • MySql必知必会

    Buffer Pool基本概念 Buffer Pool:缓冲池,简称BP。其作用是用来缓存表数据与索引数据,减少磁盘IO操作,提升效率。 Buffer Pool由 缓存数据页(Page) 和 对缓存数据页进行描述的 控制块 组成, 控制块中存储着对应缓存页的所属的 表空间、数据页的编号、以及对应缓存页在Buffer Poo

    2024年01月22日
    浏览(64)
  • SQL必知必会知识点汇总

    ❤欢迎大家阅读我的文章呀❤ 今天是SQL必知必会的最后一块练习。 希望你们在我的文章当中能有所收获!!! SLogan:利用有限的时间,撸起袖子加油干!   本篇内容主要总结了【SQL必知必会】当中的一些知识点以及我做题过程当中碰到的一些细节问题。虽然这一块的题目

    2023年04月11日
    浏览(49)
  • MySQL必知必会(初级篇)

    数据库 (DataBase,DB),是统一管理的、长期存储在计算机内的、有组织的相关数据的集合。特点是数据见联系密切、冗余度小、独立性高、易扩展,并且可以为各类用户共享。 MySQL :是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的

    2023年04月08日
    浏览(50)
  • 《MySQL 必知必会》课程笔记(三)

    创建和修改数据表,是数据存储过程中的重要⼀环。 我们不仅需要把表创建出来,还需要正确地设置限定条件,这样才能确保数据的一致性和完整性。 同时,表中的数据会随着业务需求的变化而变化,添加和修改相应的字段也是常见的操作。 首先,我们要知道 MySQL 创建表的

    2024年02月03日
    浏览(45)
  • Nacos必知必会:这些知识点你一定要掌握!

    Nacos 是一个开源的服务发现、配置管理和服务治理平台,是阿里巴巴开源的一款产品。 Nacos 可以帮助开发者更好地管理微服务架构中的服务注册、配置和发现等问题,提高系统的可靠性和可维护性。 本文将介绍 Nacos 的必知必会知识点,包括服务注册与发现、配置管理、命名

    2024年02月05日
    浏览(41)
  • MySQL必知必会:MySQL中的Schema与DataBase

    涉及到数据库的模式有很多疑惑,问题经常出现在模式和数据库之间是否有区别,如果有,区别在哪里。 取决于数据库供应商 对schema(模式)产生疑惑的一部分原因是数据库系统倾向于以自己的方式处理模式 (1)MySQL的文档中指出,在物理上,模式与数据库是同义的,所以

    2023年04月27日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包