SQL基本操作——数据操作
一、新增数据(两种方案)
-
方案1:
给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致,凡是非数值数据,都需要使用引号(建议是单引号)包裹
insert into 表名 values(值列表)[,(值列表)]; -- 可以一次性插入多条记录
desc my_student; -- 插入数据 insert into my_student values(1,'itcast0001','Jim','male'), (2,'itcast0002','Hanmeimei','female');
-
方案2:
给部分字段插入数据,需要指定字段列表,字段列表出现的顺序与字段的顺序无关,但是值列表的顺序必须与选定的字段的顺序一致。
insert into 表名 (字段列表) values(值列表)[,(值列表)]; -- 可以一次性插入多条记录
desc my_student; -- 插入数据:指定字段列表 insert into my_student (number,sex,name,id) values ('itcast0003','male','Tom',3), ('itcast0004','female','Lily',4);
注意插入数字不用加单引号,字符串必须加单引号。
二、查看数据
select */字段列表 from 表名 [where 条件]; -- /表示或者
-
查看所有数据:
-- 查看所有数据 select * from my_student;
-
查看指定字段,指定条件的数据。
-- 查看指定字段,指定条件的数据 select id,number,sex,name from my_student where id = 1; --查看满足id为1的学生信息
广义投影:
三、更新数据
updata 表名 set 字段 = 值 [where 条件]; -- 建议都有where,不然会更新全部
select * from my_student; -- 更新数据 update my_student set sex = 'female' where name = 'jim'; select * from my_student;
更新不一定会成功:如没有真正要更新的数据,有影响affected才表示成功,没有影响表示不成功,如下所示:
#数据没变化 select * from my_student; -- 更新数据 update my_student set sex = 'female' where name = 'jim'; select * from my_student;
四、删除数据
删除是不可逆的,谨慎删除
delete from 表名 [where 条件];
select * from my_student; -- 删除数据 delete from my_student where sex = 'male';#如果不加where会把my_student这张表删掉 select * from my_student;