插入数据
一、前提,新建表:
create table student( sid varchar(50), sname varchar(50), sage varchar(50), ssex varchar(50) ); select * from student;
二、多种方式插入数据:
insert into student( sid,sname,sage,ssex ) values('1','zhaolei','1990-01-01','nan'); insert into student values('2','qiandian','1990-12-21','nan'); insert into student values('3','sunfeng','1990-05-20','nan'); insert into student values('4','liyun','1990-08-06','nan'); insert into student values('5','zhoumei','1991-12-01','nv'), ('6','wulan','1992-03-01','nv'), ('7','zhenzu','1989-07-01','nv'), ('8','wangju','1990-01-20','nv');
插入后,再次查询表:
select * from student;
三、从别的表中查询数据并写入,将查询结果插入到表中
insert语句可以将一个表中查询到的数据插入到另外一个表中
语法格式: insert into 表名1 (属性列表1) select 属性列表2 from 表名2 where 条件表达式;
表名1说明记录插入到哪个表中;
表名2表示记录是从哪个表中查询出来的;
属性列表1参数表示为哪些字段赋值;
属性列表2表示从表中查询出哪些字段的数据;
条件表达式参数设置了select语句的查询条件;
注意:使用这种方法时,必须保证属性列表1和属性列表2中的字段个数是一样的,而且每个对应字段的数据类型必须是一样的。
create table student2( sid varchar(50), sname varchar(50), sage varchar(50), ssex varchar(50), saddress varchar(50) ); select * from student2; delete from student2; insert into student2 ( sid,sname,sage,ssex,saddress ) values ('11','fenglili2','1988-09-18','nv','jiangsu'); insert into student2 ( sid,sname,sage,ssex,saddress ) values ('12','fenglili3','1988-08-18','nv','jiangsu'); insert into student2 ( sid,sname,sage,ssex,saddress ) values ('13','fenglili4','1988-07-18','nv','shanghai'); select * from student2;
执行查询导入语句:
insert into student(sid,sname,sage,ssex) select sid,sname,sage,ssex from student2 where sid = '11'; insert into student(sid,sname,sage,ssex) select sid,sname,sage,ssex from student2 where sid in ('12','13');
再次执行查询语句:
四、更新数据
更新数据是更新表中已经存在的记录。通过这种方式可以改变表中已经存在的数据。 语法格式: update 表名 set 属性名1 = 取值1, 属性名2 = 取值2, …… 属性名n = 取值n where 条件表达式; 属性名n表示需要更新的字段的名称; 取值n表示为字段更新的新的数据; 条件表达式指定更新满足条件的记录;
更新前,查询语句:select * from student;
执行更新语句:
update student set ssex = 'nv' where sid in ('1','3');
执行后查询:
注意:更新的时候最好加上where条件,不然会全表更新
=================================================================================
五、删除数据 删除数据是删除表中已经存在的记录;通过这种方式可以删除表中不再使用的记录; 语法格式:delete from 表名 [ where 条件表达式 ]; 表名指明从哪个表中删除数据; where 条件表达式指定删除表中哪些数据;如果没有该条件表达式,数据库系统就会删除表中所有的记录; 执行前查询:
执行删除语句:
delete from student where sid in ('1','3');
执行后查询: