mysql-数据操作

Posted flashpoint3

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql-数据操作相关的知识,希望对你有一定的参考价值。

一  介绍 

  在mysql管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括

  1. 使用INSERT实现数据的插入
  2. UPDATE实现数据的更新
  3. 使用DELETE实现数据的删除
  4. 使用SELECT查询数据。

二 插入数据 INSERT

 1 #语法一: 按字段进行插入
 2 insert into 表(字段1,字段2 ...) values (值1,值2 ...);
 3  
 4 #语法二:按字段顺序插入
 5 insert into 表 values (值1,值2 ...);
 6  
 7 #语法三: 插入多条记录
 8 insert into 表 values (值1,值2 ...) ,(值1,值2 ...)  ,(值1,值2 ...);
 9  
10 #语法四:插入查询结果
11 insert into 表(字段1,字段2 ...)  select 字段1,字段2 ... from 表;
技术分享图片
四种插入数据方式:

一.插入一条数据
insert into student(id,name,age,sex,salary) values(1,小猪,18,,2500);


二.插入多条数据
insert into student(id,name,age,sex,salary) values(1,小猪,18,,2500) ,(2,小猪2,28,,2500),(3,小猪3,38,,2500);


三.直接插入
insert into student values(1,小猪,18,,2500);
ps:如果插入的数据个数和位置正好与表的字段个数和位置匹配,则可以省略表名后面的字段定义

四.查询并插入
insert into student(id,name,age) select id,name,age from tb ;
ps:从tb表中查询数据并插入到 student表中
代码示例

三 更新操作 UPDATE

1 #语法一: 更新整表数据
2 update 表 set 字段1= 值1, 字段2=值2 ... ;
3  
4 #语法二:更新符合条件字段3的数据
5 update 表 set 字段1= 值1, 字段2=值2 ... where 字段3 = 值3;
技术分享图片
方式一:
update student set name = 猪猪哥 ;
ps: student表中所有的 name 字段 的值 全部被更新为 猪猪哥

方式二:
update student set name= 猪猪哥 ,age =13  where id = 2;
ps: 更新 student 表中 name 和 age 字段的值,并且只更新 id = 2的一条记录
代码示例

四 删除操作 DELETE

1 #语法一:整表数据删除
2 delete from 表 ;
3  
4 #语法二:删除符合 where后条件的数据
5 delete from 表 where 字段1=值1;
技术分享图片
方式一:
delete from student;
ps:删除 student 表中所有的数据,注意:如果有自增主键,主键记录的值不会被删除.

方式二:
delete from student where id=1;
ps:只删除id 为1的数据.

方式三:
truncate student;
ps:清空表
代码示例

truncate和delete的区别?[面试题]

1、TRUNCATE 在各种表上无论是大的还是小的都非常快。而DELETE 操作会被表中数据量的大小影响其执行效率.
2、TRUNCATE是一个DDL语言而DELETE是DML语句,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。
3、TRUNCATE不能触发触发器,DELETE会触发触发器。
4、当表被清空后表和表的索引和自增主键将重新设置成初始大小,而delete则不能。

五 查询操作 SELECT

根据查询功能的不同,我们可以为查询划分为以下几类:

1.单表查询

  具体操作详见: http://www.cnblogs.com/wangfengming/articles/8064956.html

2.多表查询

  具体操作详见: http://www.cnblogs.com/wangfengming/articles/8067220.html

以上是关于mysql-数据操作的主要内容,如果未能解决你的问题,请参考以下文章

MySQL触发器

如何在片段中填充列表视图?

MySql触发器使用

VSCode自定义代码片段——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程