- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据库系统原理》实验三
数据更新、视图、权限管理
实验3.1 数据更新
1 实验内容
(1) 使用INSERT INTO语句插入数据,包括插入一个元组或将子查询的结果插入到数据库中两种方式。
(2) 使用SELECT INTO语句,产生一个新表并插入数据。
(3) 使用UPDATE语句可以修改制定表中满足WHERE子句条件的元组,有三种修改的方式:修改某个元组的值;修改多个元组的值;带子查询的修改语句。
(4) 使用DELETE语句删除数据:删除某一个元组的值;删除多个元组的值;带子查询的删除语句。
2 实验步骤
在数据库School上按下列要求进行数据更新
可在SQL代码前加下面两句SQL语句,用于确保当前使用的是School数据库
Use School
go
使用SQL语句向STUDENTS表中插入元组(编号 名字:LiMing EMAIL: HYPERLINK mailto:LM@ LM@ 年级:2002)。
insert into STUDENTS (sid,sname,email,grade)
valuesLiMing,LM@,2002);
select * from STUDENTS ;
对每个课程,求学生的选课人数和学生的最高成绩,并把结果存入数据库。使用SELECT INTO 和INSERT INTO 两种方法实现。
create table SnumanMscore(
cid char(10),
num int,
maxscore int);
insert into SnumanMscore (cid,num,maxscore )
select cid,COUNT(*),MAX(score)from CHOICES group by cid ;
select * from SnumanMscore ;
select cid,COUNT (*)as num,MAX(score) as maxscore into SnumandMscore2
from CHOICES group by cid ;
select * from SnumandMscore2 ;
在STUDENTS表中使用SQL语句将姓名为LiMing.的学生的EMAIL改为 HYPERLINK mailto:LM@ LM@。
update STUDENTS set email =LM@
where sname =LiMing;
select * from STUDENTS ;
在TEACHERS表中使用SQL语句将所有教师的工资翻倍。
update TEACHERS set salary =salary *2;
select * from TEACHERS ;
将姓名为waqcj的学生的课程C++的成绩加10分。
select sid from STUDENTS where sname =waqcj
select cid from COURSES where cname =C++
update CHOICES set score =score +10
where sid in(select sid from STUDENTS where sname =waqcj)
and cid in (select cid from COURSES where cname =C++);
select * from CHOICES where sid=800005753and cid=10005’
在STUDENTS表中使用SQL语句删除姓名为LiMing的学生信息。
delete from STUDENTS where sname =Liming;
select * from STUDENTS ;
删除所有选修课程C的选课记录。
select * from CHOICES
where cid in(select cid from COURSES where cname =C);
delete from CHOICES
where cid in (select cid from COURSES where cname =C);
对COURSES表做删去时间80的元组的操作,讨论该删除操作所受到的约束。
delete from COURSES
where hour 80;
select * from COURSES ;
实验3.2 视图操作
1实验内容
使用CREATE VIEW命令建立视图。
对视图进行查询
更新视图
使用DROP VIEW命令删除视图。
2实验步骤
在数据库School上按下列要求进行视图的有关操作
可在SQL代码前加下面两句SQL语句,用于确保当前使用的是School数据
文档评论(0)