(四)数据库数据更新

一、插入数据

1.插入元组

插入元组的INSERT语句格式为
INSERT
INTO <表名>[(<属性列1>[,<属性列2>……)]
VALUES (<常量1>[,<常量2>]……);

将一个新学生元组(学号:14042404;姓名:陈冬;性别:男;所在系:IS;年龄:18)插入到Student表中。
INSERT
INTO Student(Sno,Sname,Ssex,Sdept,Sage)
VALUES('14042404','陈冬','男','IS',18);

2、插入子查询结果

插入子查询结果的INSERT语句的格式为
INSERT 
INTO <表名>[(<属性列1>[,<属性列2>……)]
子查询;

对每一个系,求学生的平均年龄,并把结果存入数据库。
SREATE TABLE Dept_age
		     (Sdept CHAR(15)
		      Avg_age SMALLINT);

然后对Student表按系分组求平均年龄,再把系名和平均年龄存入新表中。
INSERT
INTO Dept_age(Sdept,Avg_age)
SELECT Sdept,AVG(Sage)
FROM Student
GROUP BY Sdept;

二、修改数据

修改操作又称为更新操作,其语句的一般格式为:
UPDATE <表名>
SET <列名>=<表达式>[,<列名>=<表达式>……]
[WHERE<条件>];

1、修改某一个元组的值

将学生14042401的年龄改为22岁
UPDATE Student
SET Sage=22
WHERE Sno='14042401';

2、修改多个元组的值

将所有学生的年龄增加1岁
UPDATE Student
SET Sage=Sage+1;

3、带子查询的修改语句

将计算机科学系全体学生的成绩置零。
UPDATE SC
SET Grade=0
WHERE 'CS'=
           (SELECT Sdept
            FROM Student
            WHERE Student.Sno=SC.Sno);

三、删除数据

删除语句的一般格式为
DELECT
FROM <表名>
[WHERE <条件>];
DELECT语句的功能是从指定表中删除满足WHERE子句条件的所有元组。如果省略WHERE子句,表示删除表中全部元组,但表的定义仍在字典中。也就是说,DELECT语句删除的是表中的数据,而不是关于表的定义。

1、删除某一个元组的值

删除学号为14042401的学生记录。
DELECT 
FROM Student
WHERE Sno='14042401';

2、删除多个元组的值

删除所有的学生选课记录。
DELECT
FROM SC;

3、带子查询的删除语句

删除计算机科学系所有学生的选课记录。
DELECT 
FROM SC
WHERE 'CS'=
	(SELECT Sdept
	FROM Student
	WHERE Student.Sno=SC.Sno);











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值