MySQL(4)

本文详细介绍了MySQL的修改(Update)和删除(Delete)操作,以及数据库约束,包括not null、unique、default、primary key和foreign key等。强调了正确的where条件在更新操作中的重要性,以及误操作可能带来的风险。同时,举例展示了如何使用update语句进行多列修改和配合排序、分页进行操作。最后,讨论了数据库约束在数据完整性方面的作用,特别是主键和外键约束的应用。
摘要由CSDN通过智能技术生成

文章目录

MySQL(4)

前言:

本文 将学习 MySQL 的 修改 和 删除 操作,完成这两个 操作后 还有 涉及到 数据库 约束 。

在进入 文章前我们 来 复习 一下 上文内容

新增:

insert into 表名 values (列的值, 值, …)

注意: 列的 值的类型 和 个数 与创建表的 类型和个数一至。

另外 还可以 指定列插入(表示插入所有的列) 同样还可以 一个语句 ,插入多条记录,values 后面放 多个括号,每个括号对应一条记录(一行)、

查找:

1.全列查找 :select * from 表名;

2.指定列查找 : select 列名, 列名 form 表名;

3.指定表达式 : select 表达式 from 表名;(往往是列和列之间的运算,得到的结果是一个临时表,不会影响到咱们 原始的数据库的数据)

4.指定别名 : select 表达式 as 别名 from 表名; 此处 的别名 就相当于 查询结果的临时表的列名。

5.去重 select distinct 列名 from 表名; 就会根据 指定列的 值, 来进行 去重。

6.排序:select 列名 from 表名 order by 列名 / 表达式 asc / desc;

7.条件查询: select 列名 from 表名 where 条件; 数据库服务器会遍历 表中的 记录,依次 带入到条件中,如果条件成立,则这个记录就被保留下来。如果条件不成立 则直接跳过。

这里条件 就涉及到 一些 运算符。

<

=

is null

like

<=

<=>

is not null

between…and…

>

and

or

!=

>=

in

not

<>

8.分页查询 select 列名 from 表名 limit N offset M; 从 M 条 记录 开始 ,一共返回N个

1.修改(Update)

语法: update 表名 set 列名 = 值 , 列名 = 值 where 条件;

注: update 与 表名之间没有单词连接

新增 : insert 和表名之间 有 个 into

查询 : select 和表名之间 有个 from

另外 这里表名 与 列 名之间的 set 不能 省略, where 条件 是 针对 那些 行 进行 修改 (符合条件的行就会修改,不符合就不会修改,这里如果 where 省略就是修改所有记录)。

这里 where 和 之前 select 那里 的 where 是一样的。另外 where 之外,像 order bylimit也是 可以使用的。

重要:

这里 update 是 会 修改数据库服务器上面的 原始 数据的!!!

下面 来看 几个 具体 例子

演示 : 将孙悟空 同学的 数学成绩 变更 为 80分。

1.这里我们 先通过 条件查询 查找 到孙悟空同学的 语文成绩(方便下面对比)。

在这里插入图片描述

2.通过 update 将 孙悟空同学的 成绩 变更为 80分

在这里插入图片描述

可以看到这里 将 原来的 87.5 改为了 80。

注意: where 后面的 条件 是非常 重要的,这个条件 直接 决定了有多少个记录受到了影响。

如果这里的条件 写错了 修改的 范围 就会 更大 或者 更小。(这里是没有直接的撤销操作的,只能反向修改回去)

这里的 修改 操作 也是比较危险操作,这里 修改 如果 出现 误 操作 可能 危害 比 删库还来的 严重 !!!

这里 对于删库 操作 ,一般的 公司 都会有 “预案”, 可以 快速 将 数据 给 还原 回来。

但 对于 误 修改 操作, 就会 出现 有的 修改了 ,有的 没修改, 应该 修改的 没有 修改,不应该 修改 的 修改了 。 这就会导致 数据 还原的 时候就需要,仔细 校对

那些 需要修改,那些 不需要 修改,这时 就会 耗时 耗力 耗人。

上面我们 是 一次 修改 一列 ,下面我们来 一次修改两列

演示: 将 曹孟德同学的数学成绩变更为 60分, 语文成绩变更 为70分

1.查询出曹孟德同学的 数学和 语文成绩 (方便下面对比)

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值