【数据库系统】数据更新
用到的表:
student(Sno,Sname,Ssex,Sdept,Sage);
SC(Sno,Cno,Grade)
插入单行数据:
insert into tb[列1,列2..] values(值1,值2)....
例:将一个学生(学号:1,姓名:张三,性别:男,所在系:IS,年龄18)插入到Student表中
insert into Student(Sno,Sname,Ssex,Sdept,Sage)
values('1','张三','男','IS',18);
例:插入一条选课记录('1001',1)
insert into SC(Sno,Cno)
values('1001',1);
Grade自动成为空值
插入子查询结果:
insert into table(列) select 列 from..
例:对每一个系,求学生平均年龄,并把结果存入数据库
建表:
create table Dept_age(
Sdept char(15),
avg_age int
);
insert into Dept_age(Sdept,Avg_age)
select Sdept,avg(Sage)
from Student
group by Sdept;
修改数据:update 表名 set 列名=,列名= where
student(Sno,Sname,Ssex,Sdept,Sage);
SC(Sno,Cno,Grade)
修改某一个元组的值:
例:将1号学生的年龄改为22岁
update student set age=22 where Sno=1
修改多个元组的值:
例:将所有学生的年龄增加1岁
update Student set Sage=Sage+1;
带子查询的修改语句:
例:将计算机科学系全体学生的成绩置0
update SC set Grade=0
where Sno=(
select Sno from student
where Sdept="CS"
) ;
删除数据:delete from 表 where
删除某一个元组的值
例:删除1号学生记录
delete from Student where Sno=1
删除多个元组的值
例:删除所有学生记录
delete from SC;
带子查询的删除语句
例:删除计算机科学系所有学生的选课记录
delete from SC
where Sno in
(select Sno from Student where Sdept="CS");