当前位置: 代码迷 >> 综合 >> MySQL 数据管理 DML 数据操作语言
  详细解决方案

MySQL 数据管理 DML 数据操作语言

热度:27   发布时间:2024-02-26 23:16:18.0

文章目录

    • MySQL 数据管理 DML 语言
    • 添加 insert
    • 修改 update
    • 删除 delete

MySQL 数据管理 DML 语言

数据库的意义: 数据存储和数据管理

DML 是数据操作语言

  • insert
  • update
  • delete

添加 insert

-- 插入语句(添加) 如果不写表的字段,就会一一匹配
-- INSERT INTO `表名`(`字段名`) VALUES('值');
INSERT INTO `grade`(`gradename`) VALUES('大二');
-- 一般写插入语句,一定要数据和字段一一对应
INSERT INTO `grade`(`gradename`) VALUES('大二');-- 插入多个字段
-- INSERT INTO `grade`(`gradename`) VALUES('大三'),('大四');
INSERT INTO `grade`(`gradename`) VALUES('大三'),('大四');INSERT INTO `student`(`name`,`pwd`,`sex`) VALUES('李四','aaaaaa','男'),
('王五','aaaaaa','男'),
('赵六','aaaaaa','男');

注意事项
1.字段和字段之间使用英文逗号隔开
2.字段可以省略,但是里面的值要一一对应
3.可以同时插入多条数据,values后面的值,需要使用逗号隔开

修改 update

-- 修改数据 修改谁 也就是条件
-- 修改学院的名字
-- 指定条件的修改
UPDATE `student` SET `name`='maze' WHERE id = 1;
-- 不指定条件的修改
UPDATE `student` SET `name`='maze';
-- 修改多个属性的时候,一样需要使用逗号隔开

条件: where 子语句 运算符 id = 某个值或者是其他的判断条件

-- 通过多个条件修改数据,没有上限
SELECT * FROM student;
UPDATE `student` SET `name`='zema' WHERE `name`='maze' AND id=1;

注意事项
列名不能随便写,尽量带上 ` 符号,条件是筛选的条件,如果没有指定,则会修改所有的列

删除 delete

-- 避免这样写
delete from `表名`--删除指定数据(推介)
delete from 'student' where id = 1;

清空数据

truncate 命令
作用:完全清空一个数据库表,表的结构和索引不会变

-- 清空 student 表
truncate 'student';

delete 和 truncate 区别

  • 相同点:都能删除数据,都不会删除表结构

  • 不同点:

    • truncate 重新设置自增列,计数器归零
    • truncate 不会影响事务
    • delete 删除后,不会影响自增列

delete 也不是一无是处

delete 删除的问题,重启数据库,现象为

  • InnoDB 自增列从1开始,因为它是存储在内存中,短电即失
  • MyISAM 继续从上一个自增量开始,存储在文件中,不会丢失
  相关解决方案