【郑州中心】SQL语言之数据操作-增删改查
数据操作-增删改查
简单查询
select * from 表名
例:查询所有学⽣数据
select * from students
添加数据
添加⼀⾏数据
格式⼀:所有字段设置值,值的顺序与表中字段的顺序对应
说明:主键列是⾃动增⻓,插⼊时需要占位,通常使⽤0或者 default 或者 null 来占位,插⼊成功后以实际数据为准
insert into 表名 values(...)
例:插⼊⼀个学⽣,设置所有字段的信息
insert into students values(0,'亚瑟',22,177.56)
格式⼆:部分字段设置值,值的顺序与给出的字段顺序对应
insert into 表名(字段1,...) values(值1,...)
例:插⼊⼀个学⽣,只设置姓名
insert into students(name) values('⽼夫⼦')
添加多⾏数据
⽅式⼀:写多条insert语句,语句之间⽤英⽂分号隔开
insert into students(name) values('⽼夫⼦2');
insert into students(name) values('⽼夫⼦3');
insert into students values(0,'亚瑟2',23,167.56)
⽅式⼆:写⼀条insert语句,设置多条数据,数据之间⽤英⽂逗号隔开
格式⼀:insert into 表名 values(...),(...)...
例:插⼊多个学⽣,设置所有字段的信息
insert into students values(0,'亚瑟3',23,167.56),(0,'亚瑟4',23,167.56)
格式⼆:insert into 表名(列1,...) values(值1,...),(值1,...)...
例:插⼊多个学⽣,只设置姓名
insert into students(name) values('⽼夫⼦5'),('⽼夫⼦6')
修改
格式:update 表名 set 列1=值1,列2=值2... where 条件
例:修改id为5的学⽣数据,姓名改为 狄仁杰,年龄改为 20
update students set name='狄仁杰',age=20 where id=5
删除
格式⼀:delete from 表名 where 条件
例:删除id为6的学⽣数据
delete from students where id=6
逻辑删除:对于重要的数据,不能轻易执⾏delete语句进⾏删除,⼀旦删除,数据⽆法恢复,这时可以进⾏逻辑删除。
1、给表添加字段,代表数据是否删除,⼀般起名isdelete,0代表未删除,1代表删除,默认值为0
2、当要删除某条数据时,只需要设置这条数据的isdelete字段为1
3、以后在查询数据时,只查询出isdelete为0的数据
例:
1、给学⽣表添加字段(isdelete),默认值为0,如果表中已经有数据,需要把所有数据的isdelete字段更新为0
update students set isdelete=0
2、删除id为1的学⽣
update students set isdelete=1 where id=1
3、查询未删除的数据
select * from students where isdelete=0
格式⼆:truncate table 表名(删除表的所有数据,保留表结构)
例:删除学⽣表的所有数据
格式三:drop table 表名(删除表,所有数据和表结构都删掉)
例:删除学⽣表
Truncate和Delete、Drop的区别
1、Delete删除数据时,即使删除所有数据,其中的⾃增⻓字段不会从1开始
2、Truncate删除数据时,其中的⾃增⻓字段恢复从1开始
3、Drop是删除表,所有数据和表结构都删掉
总结
在速度上,drop > truncate > delete
如果想删除部分数据⽤delete,注意带上where⼦句
如果想删除表,⽤drop
如果想保留表⽽将所有数据删除,⾃增⻓字段恢复从1开始,⽤truncate
|
|