4.MySQL数据库DML操作

文章目录

MySQL数据库DML操作

基本知识

  • DML(数据库管理语言):用于操作数据库对象中包含的数据
    • insertupdatedelete

添加insert

-- 语法
INSERT INTO 表名<(字段1,字段2,字段3,...)> VALUES('值1','值2','值3')
  • ’ 字段1,字段2…’ 该部分可省略 , 但添加的值务必与表结构,数据列,顺序相对应,且数量一致 .

  • 可同时插入多条数据 , values 后用英文逗号隔开

    insert into `stu`(`name`) values('张三'),('李四') 
    

修改update

-- 语法
UPDATE 表名 SET column_name=value <,column_name2=value2,...> <WHERE condition>;
  • value 为修改后的数据 , 可以为变量 , 具体值, 表达式或者嵌套的SELECT结果
  • condition 为筛选条件 , 如不指定则修改该表的所有列数据

删除delete

-- 语法
DELETE FROM 表名 <WHERE condition>;	
  • 只会删除数据,不会删除表的结构

    Delete删除的问题

    删除完毕后,重启数据库后,

    如果引擎是InnoDB,自增列从1开始 (因为是存在内存中的,断电即失);

    如果引擎是MyISAM,继续自增(存在文件中)

truncate命令

作用:用于完全清空表数据 , 但表结构 , 索引 , 约束等不变 ;

语法:

TRUNCATE <table> 表名;

-- 清空年级表
TRUNCATE grade

注意:区别于delete命令

  • 相同 : 都能删除数据 , 不删除表结构 , 但TRUNCATE速度更快
  • 不同 :
    • 使用TRUNCATE TABLE 重新设置AUTO_INCREMENT计数器(自增归0)
    • 使用TRUNCATE TABLE不会对事务有影响 (事务后面会说)
上一篇:vue项目篇(更新中)


下一篇:drop、truncate和delete的区别