第三章 SQL语言习题
第3章SQL语言习题参考答案(新)
![第3章SQL语言习题参考答案(新)](https://img.taocdn.com/s3/m/c76b40bdba1aa8114531d975.png)
第3章 SQL语言习题参考答案1.试述SQL语言的特点。
(85页)答:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供两种使用方式、语言简捷,易学易用。
2.试述SQL的定义功能。
(87页)答:SQL的数据定义功能包括定义表、定义视图和定义索引3.用SQL语句建立第二章习题5中的四个表。
S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成:CREATE TABLE S(Sno C(2) UNIQUE,Sname C(6) ,Status N(2),City C(4))零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成:CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2),WEIGHT I(2))工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成:CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8), CITY C(4))供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成:CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2), QTY N(2))4.针对上题中建立的四个表试用SQL语言完成第二章习题5中的查询:(1)求供应工程J1零件的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO=’J1’(2)求供应工程J1零件P1的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1' (3)求供应工程J1零件为红色的供应商号码SNO:SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='红'(4)求没有使用天津供应商生产的红色零件的工程号JNO:SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='红' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。
SQL第三章课后习题答案
![SQL第三章课后习题答案](https://img.taocdn.com/s3/m/f981613b10661ed9ad51f3b8.png)
--1):创建数据库并进行一些操作:create database studentonprimary (name=sudent_datafilename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\student.mdf',size=20,maxsize=50,filegrowth=25%)log on(name=student_log,filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\student_log.LDF',size=3,maxsize=10,filegrowth=1)--2):将数据库student的初始分配空间大小扩充到40Muse studentgoalter database studentmodify file(name=student,size=40)--3):将数据库student的空间压缩到最小容量use studentgodbcc shrinkdatabase('student',2)--4):将student数据库重新设置为只读状态EXEC sp_dboption 'student','read only',false--5):将student数据库改名为scholasticexec sp_renamedb 'student','scholastic'--6):删除scholastic数据库drop database scholastic--7):采用系统存储过程分离和附加数据库create database studentexec sp_detach_db @dbname='student' --从服务器分离student数据库exec sp_attach_db @dbname=N'student'@filename1=N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\student_Data.mdf'@filename2=N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\student_log.LDF'--本章习题:--1:--(1)、关系数据库以二维表的形式存储数据--(2)、系统数据库和用户数据库--(3)、master,model,mdb,tempdb--master数据库记录了SQL server 2005的所有系统级信息--madel数据库为用户创建新的数据库提供模板--msdb数据库是SQL Server 2005代理服务使用的数据库--tempdb数据库保存所有的临时表和临时存储过程--(4)、使用对象资源管理器创建跟使用T-SQL语句创建用户数据库--(5)、--举例如下:--create database student 创建一个名为student的数据库--on 指定存储数据库数据部分的磁盘文件--primary (NAME=student, 主要的,命名--FILENAME='D:\student.mdf', 存储位置--size=3, 初始大小--maxsize=10, 最大容量--filegrowth=1) 增长方式--LOG on 指定建立数据库的日志文件--(name=student, 命名--filename='D:\student.ldf', 地址--size=1, 初始大小--maxsize=10, 最大容量--filegrowth=1)增长方式--(6)、--在数据库中创建一个数据表,以及对数据表中的某一数据进行修改等操作都是一个事务--事务日志的作用,根据日志文件信息,可以重新执行某些事务,完成某些未完成的事务,将数据库回滚--到之前的缪戈时间状态、复制事务或服务器等。
【精选】数据库第三章课后习题
![【精选】数据库第三章课后习题](https://img.taocdn.com/s3/m/2a08165515791711cc7931b765ce05087632750c.png)
• 14、 • (1)GRANT SELECT ON 职工,部门TO 王明 • (2) GRANT INSERT,DELETE ON 职工,部门TO
李勇
• (3) GRANT SELECT ON 职工WHEN USER() = NAME TO ALL
• (4) GRANT SELECT,UPDATE(工资) ON 职工 TO 刘星
• 7、视图的优点 • 视图能够简化用户的操作 • 视图使用户能以多种角度看待同一数据 • 视图对重构数据库提供了一定程度的逻辑
独立性; • 视图能够对机密数据提供安全保护。
• 8、所有的视图是否都可以更新?
• 不是。视图是不实际存储数据的虚表,因 此对视图的更新,最终要转换为对基本表 的更新。因为有些视图的更新不能惟一有 意义地转换成对相应基本表的更新,所以 ,并不是所有的视图都是可更新的。
SPJ TO 李天明;
• 13、 • (1)INSERT INTO SC(Sno,Cno,Grade)
VALUES("2000012", "1128", NULL); • (2)SELECT Sno,Cno
FROM SC
WHERE Grade IS NULL;
• (3)SELECT cname,grade FROM course,Sc WHERE o=o AND cname="英语"
• (1) SELECT DIST PNO,QTY FROM SPQ
• (2) SELECT DIST * FROM SPQ WHERE SNO="S1‘
• 12、 • (1)GRANT INSERT
ON TABLE S TO 张勇
数据库原理及应用(SQL Server 2008)第三章习题及实验答案
![数据库原理及应用(SQL Server 2008)第三章习题及实验答案](https://img.taocdn.com/s3/m/666dbf0d03d8ce2f006623f1.png)
第三章习题及实验答案习题答案一、选择题1、A2、A3、C二、填空题1、程序2、MIN、SUM3、CONTINUE、BREAK三、简答题1、可以使用的运算符可以分为算术运算符、逻辑运算符、赋值运算符、字符串串联运算符、按位运算符、一元运算符及比较运算符等。
2、用户自定义函数可分为:标量函数和表值函数。
可使用CREATE FUNCTION语句创建函数,在调用用户自定义函数时,如果调用的是标量函数,则必须提供架构名。
如果调用的是表值函数,则可以不提供架构名。
用户可以将调用的函数用在赋值语句中,或作为表达式的操作数,或用在SQL命令中。
3、批处理是包含一个或多个Transaction-SQL语句的组,从应用程序一次性的发送到SQL Server执行。
批处理是使用GO语句将多条SQL语句进行分隔,其中每两个GO之间的SQL 语句就是一个批处理单元。
一个批处理中可以包含一条语句,也可以包含多条语句。
4、在SQL Server系统中,可以使用的流程控制语句有BEGIN…..END、IF…ELSE、CASE、WHILE…..CONTINUE….BREAK、GOTO、W AITFOR、RETURN等。
BEGIN…..END….: 在条件语句和循环语句等流程控制语句中,当符合特定条件需要执行两个或多个语句时,就应该使用BEGIN…END语句将这些语句组合在一起。
IF…..ELSE….: IF….ELSE语句是条件判断语句。
CASE:用于多重选择的条件判断语句,结果返回单个值。
在CASE中可根据表达式的值选择相应的结果。
WHILE…..CONTINUE….BREAK: SQL语言中的循环语句,用来重复执行SQL语句或语句块。
GOTO: SQL程序中的无条件跳转语句,可以使程序直接跳到指定的标识符位置处继续执行。
WAITFOR: SQL中起暂停正在执行的语句、语句块或者存储过程的调用,直到某时间、时间间隔到达后才继续执行。
第三章SQL习题PPT课件
![第三章SQL习题PPT课件](https://img.taocdn.com/s3/m/7ed222d4e87101f69f31956e.png)
22.假设学生关系是S(S#,SNAME,SEX,AGE),课 程关系是C(C#,CNAME,TEACHER),学生选课 关系是SC(S#,C#,GRADE).要查询选 修”COMPUTER”课程的”女”同学的姓名, 将涉及关系____.
AS
B SC,C
C S,SC
_____.
A SELECT COUNT(DISTINCT S#)FROM SC
B SELECT COUNT(S#)FROM SC
C SELECT COUNT()FROM SC
D SELECT COUNT(DISTINCT *)FROM SC
20.在数据库中有如图所示的两个表,若职工表 的主码是职工号,部门表的主码是部门号,SQL操 作____不能执行.
5.在SQL语言中,实现数据检索的语句是_____.
A SELECT
B INSERT
C UPDATE
D DELETE
6.SELECT语句执行结果是_____.
A 数据项
B 元组
C表
D 数据库
7.在SQL语句中,对输出结果排序的语句是_____.
A GROUP BY
B ORDER BY
C WHERE
C SELECT命令是通过WHILE子句指定查询条 件
D SELECT命令是通过IS子句指定查询条件
16.与WHERE AGE BETWEEN 18 AND 23完全 等价的是____.
A WHERE AGE>18 AND AGE<23
B WHERE AGE<18 AND AGE>23
C WHERE AGE>18 AND AGE<=23
《SQL习题精选》word版
![《SQL习题精选》word版](https://img.taocdn.com/s3/m/9567d1bef01dc281e43af0ab.png)
第一章绪论一,选择题1、DBS是采用了数据库技术的计算机系统,DBS是一个集合体,包含数据库、计算机硬件、软件和( C)。
A、系统分析员B、程序员C、数据库管理员D、操作员2、数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是( A)。
A、DBS包括DB和DBMSB、DBMS包括DB和DBSC、DB包括DBS和DBMSD、DBS就是DB,也就是DBMS3、下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是( D)。
I.人工管理阶段II.文件系统阶段III.数据库阶段A、I 和IIB、只有IIC、II 和IIID、只有I4、下列四项中,不属于数据库系统特点的是(C ) 。
A、数据共享B、数据完整性C、数据冗余度高D、数据独立性高5、数据库系统的数据独立性体现在(B ) 。
A、不会因为数据的变化而影响到应用程序B、不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C、不会因为存储策略的变化而影响存储结构D、不会因为某些存储结构的变化而影响其他的存储结构三、简答题1、数据:描述事物的符号记录称为数据.数据的种类有文字,图形,图象,声音,正文等等.数据与其语义是不可分的。
2、数据库:数据库是长期储存在计算机内,有组织的,可共享的数据集合.数据库中的数据按一定的数据模型组织,描述和储存,具有较小的冗余度,较高的数据独立性和易扩展性,并可为各种用户共享。
数据库管理系统:数据库管理系统(DBMS)是位于用户与操作系统之间的一层数据管理软件.用于科学地组织和存储数据,高效地获取和维护数据.DBMS主要功能包括数据定义功能,数据操纵功能,数据库的运行管理功能,数据库的建立和维护功能。
3、数据库管理系统的主要功能①数据库定义功能;②数据存取功能;③数据库运行管理;④数据库的建立和维护功能。
4、试述数据库系统的特点。
数据库系统的主要特点有:一,数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
第三章SQL语言习题
![第三章SQL语言习题](https://img.taocdn.com/s3/m/52a212f9162ded630b1c59eef8c75fbfc77d9429.png)
第三章SQL语⾔习题第三章SQL语⾔⼀、选择题:1、SQL语⾔是的语⾔,易学习。
A.过程化B.⾮过程化C.格式化D.导航式2、SQL语⾔是语⾔。
A.层次数据库B.⽹络数据库C.关系数据库D.⾮数据库3、SQL语⾔具有的功能。
A.关系规范化,数据操纵,数据控制B.数据定义,数据操纵,数据控制C.数据定义,关系规范化,数据控制D.数据定义,关系规范化,数据操纵4、SQL语⾔具有两种使⽤⽅式,分别称为交互式SQL和。
A.提⽰式SQL B.多⽤户SQLC.嵌⼊式SQL D.解释式SQL5、SQL语⾔中,实现数据检索的语句是。
A.SELECT B.INSERTC.UPDATE D.DELETE6、下列SQL语句中,修改表结构的是。
A.ALTER B.CREATEC.UPDATE D.DELETE7、SQL中,与“NOT IN”等价的操作符是。
A.=SOME B.<>SOMEC.=ALL D.<>ALL8、假设有三个基本表:学⽣表S、课程表C、学⽣选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)检索所有⽐“王华”年龄⼤的学⽣姓名、年龄和性别。
正确的SQL语句是。
A.SELECT SN,AGE,SEX FROM SWHERE AGE>(SELECT AGE FROM SWHERE SN=”王华”)B.SELECT SN,AGE,SEXFROM SWHERE SN=”王华”C.SELECT SN,AGE,SEXFROM SWHERE AGE>(SELECT AGEWHERE SN=”王华”)D.SELECT SN,AGE,SEXFROM SWHERE AGE>王华.AGE9、检索选修课程”C2”的学⽣中成绩最⾼的学⽣的学号。
正确的SELECT语句是。
A.SELECT S#FROM SCWHERE C#=”C2”AND GRADE>=(SELECT GRADE FROM SCWHERE C#=“C2”)B.SELECT S#FROM SCWHERE C#=”C2”AND GRADE IN(SELECT GRADE FROM SCWHERE C#=“C2”)C.SELECT S#FROM SCWHERE C#=”C2”AND GRADE NOT IN(SELECT GRADE FROM SCWHERE C#=“C2”)D.SELECT S#FROM SCWHERE C#=”C2”AND GRADE>=ALL(SELECT GRADE FROM SCWHERE C#=“C2”)10、检索学⽣姓名及其所选修课程的课程号和成绩。
(完整版)第三章SQL练习题参考答案
![(完整版)第三章SQL练习题参考答案](https://img.taocdn.com/s3/m/96d2a19bf78a6529647d53bf.png)
11、针对以上四个表,用SQL语言完成以下各项操作:①给学生表增加一属性Nation(民族),数据类型为Varchar(20);Alter table studentadd Nation Varchar(20);②删除学生表中新增的属性Nation;Alter table studentdrop column Nation;③向成绩表中插入记录(”2001110”,”3”,80);insert into Gradevalues('2001103','3',80);④修改学号为”2001103”的学生的成绩为70分;update Gradeset Gmark=70where Sno='2001103';⑤删除学号为”2001110”的学生的成绩记录;delete Gradewhere Sno='2001110';⑥为学生表创建一个名为,以班级号的升序排序;create index IX_Class on student(Clno ASC);⑦删除IX_Class索引Drop index IX_Class12、针对以上四个表,用SQL语言完成以下各项查询:①找出所有被学生选修了的课程号;select distinct cnofrom grade;②找出01311班女学生的个人信息;select *from studentwhere clno=01311 and ssex='女';③找出01311班、01312班的学生姓名、性别、出生年份;Select sname,ssex, year(getdata())-sage as ‘出生年份’from studentwhere clno in('01311','01312');④找出所有姓李的学生的个人信息;Select *from studentwhere sname like ’李%’;⑤找出学生李勇所在班级的学生人数;Select count(*)from studentwhere clno in (select clnofrom studentwhere sname= '李勇');⑥找出课程名为操作系统的平均成绩、最高分、最低分;Select avg(gmark),max(gmark),min(gmark)from gradewhere cno =(select cnofrom coursewhere cname='操作系统');⑦找出选修了课程的学生人数;Select count(distinct sno)from grade;⑧找出选修了课程操作系统的学生人数;Select count(sno)from gradewhere cno =(select cnofrom coursewhere cname='操作系统');⑨找出2000级计算机软件班的成绩为空的学生姓名。
数据库第三章部分习题答案
![数据库第三章部分习题答案](https://img.taocdn.com/s3/m/e463c5843b3567ec112d8a04.png)
3.2 对于教学数据库的三个基本表S(S#,SNAME,AGE,SEX)SC(S#,C#,GRADE)C(C#,CNAME,TEACHER)试用SQL的查询语句表达下列查询:3.2.1检索年龄小于17岁的女学生的学号和姓名select s#,sname from Swhere age<17 and sex=F;3.2.2检索男生所学课程的课程号和课程名select c#,cname from Cwhere c# in (select distinct c#from SCwhere s# in (select s# from S where sex=M)) 3.2.3检索男生所学课程的任课老师的工号和姓名实用文档select t#,tname from Twhere t# in(select distinct t#from C实用文档where c# in(select distinct c#from SCwhere s# in(select s#from Swhere sex=1)));3.2.4检索至少选修两门课程的学生的学号select s#from SCgroup by s#having count(c#)>=2;3.2.5检索至少有学号为S2和S4所学的课程和课程名select c#,cnamefrom C实用文档where c# in((select c#from sc where s#='S2')intersect实用文档(select c# from sc where s#='S4') );3.2.6检索‘WANG’同学不学的课程号select c# from cexcept(select distinct c#from scwhere s# =(select s# from s where sname='WANG'));3.2.7检索全部学生都选修的课程号和课程名select c#,cnamefrom cwhere not exists(select s#from swhere c.c# not in (select c# from sc where sc.s#=s.s# ));实用文档3.2.8检索选修课程包含'LIU'老师所授课程的全部课程的学生的学号和姓名select s#,snamefrom s实用文档where not exists((select c#from cwhere t#=(select t#from twhere tname='LIU')) except(select c# from sc wheresc.s#=s.s#) );3.4 设有两个基本表R(A,B,C)和S(A,B,C),试用SQL查询语句表达下列关系代数表达式:① R∪S ② R∩S ③ R-S ④R×S ⑤πA,BπB,C(S)⑥π1,6(σ3=4(R×S)⑦π1,2,3(R S)⑧R÷πC(S)解:①(SELECT * FROM R)UNION(SELECT * FROM S);②(SELECT * FROM R)3=3实用文档INTERSECT(SELECT * FROM S);③(SELECT * FROM R)MINUS(SELECT * FROM S);④SELECT *实用文档FROM R, S;⑤SELECT R.A, R.B, S.CFROM R, SWHERE R.B=S.B;⑥SELECT R.A, S.CFROM R, SWHERE R.C=S.A;⑦SELECT R.* (R.*表示R中全部属性)FROM R, SWHERE R.C=S.C;⑧R÷πC(S)的元组表达式如下:{ t |(∃u)(∀v)(∃w)(R(u)∧S(v)∧R(w)∧w[1]=u[1] ∧w[2]=u[2] ∧w[3]=v[3] ∧t[1]=u[1] ∧t[2]=u[2])}据此,可写出SELECT语句:SELECT A, BFROM R RXWHERE NOT EXISTS实用文档( SELECT *FROM SWHERE NOT EXISTS( SELECT *FROM R RY实用文档WHERE RY.A=RX.A AND RY.B=RX.B ANDRY.C=S.C));3.6 试叙述SQL语言的关系代数特点和元组演算特点。
最新第3章 SQL语言习题参考答案
![最新第3章 SQL语言习题参考答案](https://img.taocdn.com/s3/m/418418f1dd36a32d72758109.png)
第3章 SQL语言习题参考答案1.试述SQL语言的特点。
(85页)答:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供两种使用方式、语言简捷,易学易用。
2.试述SQL的定义功能。
(87页)答:SQL的数据定义功能包括定义表、定义视图和定义索引3.用SQL语句建立第二章习题5中的四个表。
S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成:CREATE TABLE S(Sno C(2) UNIQUE,Sname C(6) ,Status N(2),City C(4))零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成:CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2), WEIGHT I(2))工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成:CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8), CITY C(4))供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成:CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2), QTY N(2))4.针对上题中建立的四个表试用SQL语言完成第二章习题5中的查询:(1)求供应工程J1零件的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO=’J1’(2)求供应工程J1零件P1的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'(3)求供应工程J1零件为红色的供应商号码SNO:SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='红'(4)求没有使用天津供应商生产的红色零件的工程号JNO:SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='红' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。
第3章 SQL语言习题参考答案
![第3章 SQL语言习题参考答案](https://img.taocdn.com/s3/m/93e2ce9f51e79b896802269f.png)
第3章 SQL语言习题参考答案1.试述SQL语言的特点。
(85页)答:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供两种使用方式、语言简捷,易学易用。
2.试述SQL的定义功能。
(87页)答:SQL的数据定义功能包括定义表、定义视图和定义索引3.用SQL语句建立第二章习题5中的四个表。
S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成:CREATE TABLE S(Sno C(2) UNIQUE,Sname C(6) ,Status N(2),City C(4))零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成:CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2), WEIGHT I(2))工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成:CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8), CITY C(4))供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成:CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2), QTY N(2))4.针对上题中建立的四个表试用SQL语言完成第二章习题5中的查询:(1)求供应工程J1零件的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO=’J1’(2)求供应工程J1零件P1的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'(3)求供应工程J1零件为红色的供应商号码SNO:SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='红'(4)求没有使用天津供应商生产的红色零件的工程号JNO:SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='红' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。
数据库系统原理教程课后习题及答案(第三章)汇编
![数据库系统原理教程课后习题及答案(第三章)汇编](https://img.taocdn.com/s3/m/00c7531daf45b307e87197ee.png)
第3章关系数据库标准语言SQL1 .试述sQL 语言的特点。
答:(l)综合统一。
sQL 语言集数据定义语言DDL 、数据操纵语言DML 、数据控制语言DCL 的功能于一体。
(2)高度非过程化。
用sQL 语言进行数据操作,只要提出“做什么”,而无需指明“怎么做”,因此无需了解存取路径,存取路径的选择以及sQL 语句的操作过程由系统自动完成。
(3)面向集合的操作方式。
sQL 语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。
(4)以同一种语法结构提供两种使用方式。
sQL 语言既是自含式语言,又是嵌入式语言。
作为自含式语言,它能够独立地用于联机交互的使用方式;作为嵌入式语言,它能够嵌入到高级语言程序中,供程序员设计程序时使用。
(5)语言简捷,易学易用。
2 .试述sQL 的定义功能。
sQL 的数据定义功能包括定义表、定义视图和定义索引。
SQL 语言使用cREATE TABLE 语句建立基本表,ALTER TABLE 语句修改基本表定义,DROP TABLE 语句删除基本表;使用CREATE INDEX 语句建立索引,DROP INDEX 语句删除索引;使用CREATE VIEW 语句建立视图,DROP VIEW 语句删除视图。
3 .用sQL 语句建立第二章习题5 中的4 个表。
答:对于S 表:S ( SNO , SNAME , STATUS , CITY ) ;建S 表:CREATE TABLE S ( Sno C(2) UNIQUE,Sname C(6) ,Status C(2),City C(4));对于P 表:P ( PNO , PNAME , COLOR , WEIGHT );建P 表:CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2),WEIGHT INT);对于J 表:J ( JNO , JNAME , CITY);建J 表:CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8),CITY C(4))对于sPJ 表:sPJ ( sNo , PNo , JNo , QTY);建SPJ 表:SPJ(SNO,PNO,JNO,QTY)CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2),QTY INT))4.针对上题中建立的4 个表试用sQL 语言完成第二章习题5 中的查询。
第三章 SQL语言练习题和答案
![第三章 SQL语言练习题和答案](https://img.taocdn.com/s3/m/be2754f3f90f76c661371af7.png)
第三章SQL语言一、选择题1. SQL语言是(B )的语言,容易学习。
A.过程化B. 非过程化C.格式化D. 导航式2. SQL语言的数据操纵语句包括SELECT、INSERT、UPDATE、DELETE等。
其中最重要的,也是使用最频繁的语句是(A)。
A. SELECTB. INSERTC. UPDATED. DELETE3. 在视图上不能完成的操作是()。
A. 更新视图B. 查询C. 在视图上定义新的表D. 在视图上定义新的视图4. SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE、DROP、ALTER语句是实现哪种功能()。
A. 数据查询B. 数据操纵C. 数据定义D. 数据控制5. SQL语言中,删除一个视图的命令是()。
A.DELETEB.DROPC.CLEARD.REMOVE6. 在SQL语言中的视图VIEW是数据库的()。
A. 外模式B. 模式C. 内模式D. 存储模式7. 下列的SQL语句中,()不是数据定义语句。
A. CREATE TABLEB. DROP VIEWC. CREATE VIEWD. GRANT8. 若要撤销数据库中已经存在的表S,可用()。
A. DELETE TABLE SB. DELETE SC. DROP TABLE SD. DROP S9. 若要在基本表S中增加一列CN(课程名),可用()。
A.ADD TABLE S(CN CHAR(8))B.ADD TABLE S ALTER(CN CHAR(8))C.ALTER TABLE S ADD(CN CHAR(8))D.ALTER TABLE S (ADD CN CHAR(8))10. 学生关系模式S(S#,Sname,Sex,Age),S的属性分别表示学生的学号、姓名、性别、年龄。
要在表S中删除一个属性“年龄”,可选用的SQL语句是()。
A. DELETE Age from SB. ALTER TABLE S DROP AgeC. UPDATE S AgeD. ALTER TABLE S …Age‟11. 有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。
数据库系统概论第三章课后作业
![数据库系统概论第三章课后作业](https://img.taocdn.com/s3/m/cc828933b90d6c85ec3ac693.png)
第三章作业参考答案3.用SQL 语句建立第二章习题5中的4个表。
CREATE TABLE S(SNO CHAR(3)primary key,SNAME CHAR(10)not null,STATUS CHAR(2),CITY CHAR(10));CREATE TABLE P(PNO CHAR(3)primary key,PNAME CHAR(10),COLOR CHAR(4),WEIGHT INT);CREATE TABLE J(JNO CHAR(3)primary key,JNAME CHAR(10),CITY CHAR(10));CREATE TABLE SPJ(SNO CHAR(3),PNO CHAR(3),JNO CHAR(3),QTY INTPrimary key(sno,pno,jno));4.针对上题中建立的4个表试用SQL 语言完成第二章习题5中的查询。
(1)求供应工程J1零件的供应商号码SNO;关系代数:SELECT SNOFROM SPJWHERE JNO =‘J1’;(2)求供应工程J1零件P1的供应商号码SNO;关系代数:SELECT SNOFROM SPJWHERE JNO =‘J1’AND PNO =‘P1’;(3)求供应工程J1零件为红色的供应商号码SNO;关系代数:FROM SPJWHERE JNO =‘J1’AND PNO IN(SELECT PNOFROM PWHERE COLOR =‘红’);或者是SELECT SNOFROM SPJ,PWHERE JNO =‘J1’AND SPJ.PNO = P.PNOAND COLOR =‘红’;(4)求没有使用天津供应商生产的红色零件的工程号JNO;注意:从J表入手,以包含那些尚未使用任何零件的工程号。
关系代数:SELECT JNOFROM JWHERE NOT EXISTSFROM SPJWHERE SPJ.JNO = J.JNOAND SNO IN(SELECT SNOFROM SWHERE CITY =’天津’)AND PNO IN(SELECT PNOFROM PWHERE COLOR =’红’));或者SELECT JNOFROM JWHERE NOT EXISTS(SELECT *FROM SPJ,S,PWHERE SPJ.JNO = J.JNOAND SPJ.SNO = S.SNOAND SPJ.PNO = P.PNOAND S.CITY =‘天津’AND P.COLOR =‘红’);(5)求至少用了供应商S1所供应的全部零件的工程号JNO(类似于《概论》P113例44)。
第三章习题
![第三章习题](https://img.taocdn.com/s3/m/3d0fae06cc7931b765ce1588.png)
1.★在SQL语句中,与X BETWEEN 20 AND 30等价的表达式是哪一项?()A.X>20 AND X<30 B.X>=20 AND X<=30C.X>20 AND X<=30 D.X>=20 AND X<302.★已知有关系模式R(sno,sname,age),其中sno表示学生的学号,类型为Char(8),前4为表示入学年份。
查询所有2003年入学的学生姓名(sname),SQL语句是下列选项中的哪一项?()A.SELECT sname FROM R WHERE sno = …2003%‟B.SELECT sname FROM R WHERE sno = …2003_‟C.SELECT sname FROM R WHERE sno LIKE …2003%‟D.SELECT sname FROM R WHERE sno LIKE …2003_‟3.SQL语言属于哪一种语言? ()A.关系数据库B.层次数据库C.网络数据库D.非数据库4.在视图上不能授予的操作权限是下列选项中的哪一项?()A.INSERT B.INDEX C.DELETE D.SELECT5.SQL语言具有两种使用方式,分别称为交互式SQL和下列选项中的哪一项?()A.提示式SQL B.嵌入式SQL C.多用户SQL D.解释式SQL 6.下列哪组SQL命令全部属于数据定义语句的命令?()A.CREATE,DROP,ALTER B.CREATE,DROP,SELECTC.CREATE,DROP,GRANT D.CREATE,DROP,UPDATE7.★实现关系代数投影运算的SQL子句是下列选项中的哪一项?()A.ORDER BY B.SELECT C.FROM D.WHERE8.★要使用动态数组,必须使用下列哪项来确定其维数和每一维的大小?()A.Dim B.Call C.ReDim D.Script9.数据定义功能中,Drop的作用是哪一项?()A.增加记录B.统计记录C.删除表D.建立索引10.在SQL中,SELECT语句的“SELECT DISTINCT”表示查询结果具有下列选项中的哪一项特征?()A.属性名都不相同B.去掉了重复的列C.属性值都不相同D.行都不相同11.★关系验算中的集函数A VG代表的含义是哪一项?。
(完整版)第3章SQL语言习题参考答案(新)
![(完整版)第3章SQL语言习题参考答案(新)](https://img.taocdn.com/s3/m/f12a37d558fafab069dc02ea.png)
第3章 SQL语言习题参考答案1.试述SQL语言的特点。
(85页)答:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供两种使用方式、语言简捷,易学易用。
2.试述SQL的定义功能。
(87页)答:SQL的数据定义功能包括定义表、定义视图和定义索引3.用SQL语句建立第二章习题5中的四个表。
S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成:CREATE TABLE S(Sno C(2) UNIQUE,Sname C(6) ,Status N(2),City C(4))零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成:CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2), WEIGHT I(2))工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成:CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8),CITY C(4))供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成:CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2),QTY N(2))4.针对上题中建立的四个表试用SQL语言完成第二章习题5中的查询:(1)求供应工程J1零件的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO=’J1’(2)求供应工程J1零件P1的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1' (3)求供应工程J1零件为红色的供应商号码SNO:SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='红'(4)求没有使用天津供应商生产的红色零件的工程号JNO:SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='红' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。
数据库习题第三章 习题
![数据库习题第三章 习题](https://img.taocdn.com/s3/m/8aec48d1a58da0116c1749ca.png)
CH3关系数据库标准语言SQL一、选择题1、SQL属于()数据库语言A、关系型B、网状型C、层次型D、面向对象型2、SQL中创建基本表应使用()语句A、CREATE INDEXB、CREATE TABLEC、CREATE VIEWD、CREATE DATEBASE3、SQL中创建视图应使用()语句A、CREATE SHCEMAB、CREATE TABLEC、CREATE VIEWD、CREATE DATEBASE4、关系代数中的Π运算对应SELECT语句中的()子句A、SELECTB、FROMC、WHERED、GROUP BY5、关系代数中的σ运算对应SELECT语句中的()子句A、SELECTB、FROMC、WHERED、GROUP BY6、WHERE子句的条件表达式中,可以匹配0个到多个字符的通配是()A、*B、%C、_D、?7、WHERE子句的条件表达式中,可以匹配单个字符的通配是()A、*B、%C、_D、?8、SELECT语句中与HA VING子句同时使用的是()子句A、ORDER BYB、WHEREC、GROUP BYD、无需配合9、与WHERE G BETWEEN 60 AND 100 语句等价的子句是()A、WHERE G>60 AND G<100B、WHERE G>=60 AND G<100C、WHERE G>60 AND G<=100D、WHERE G>=60 AND G<=10010、若用如下的SQL语句创建一个表student:CREATE TABLE student ( NO CHAR(4) NOT NULL,NAME CHAR(8) NOT NULL,SEX CHAR (2),AGE INT)可以插入到student表中的是()A、(‘1031’,‘刘华’,男,23)B、(‘1031’,‘刘华’,NULL,NULL)C、(NULL,‘刘华’,‘男’,‘23’)D、(‘1031’,NULL,‘男’,23)11、SQL语言支持建立聚簇索引,这样可以提高查询效率,但是,并非所有属性列都适宜建立聚簇索引,下面()属性列不适宜建立聚簇索引。
第三章 添加、删除、修改数据(SQL)
![第三章 添加、删除、修改数据(SQL)](https://img.taocdn.com/s3/m/ec3eb0244b35eefdc8d333f5.png)
2
相关回顾
5、保证数据完整性从第( B )步骤开始。
A、建立数据库 B、建立数据库表 C、在表中输入数据 D、数据导出
6、创建表的字段主要有哪些操作项?
第一步:输入字段名 第二步:确定数据类型 第三步:确定是否允许为空 第四步:确定是否为主键或者标识列 第五步:确定默认值
5
掌握SQL中的逻辑和条件运算符 熟练使用SQL命令添加数据
熟练使用SQL命令修改数据 熟练使用SQL命令删除数据
本章目标
6
为什么要使用SQL
• 应用程序需要通过SQL语句才能与数据库打交道。 • 难道仅仅使用SQL Server Management Studio操作数据
库? • SQL语言结构简洁,功能强大,简单易学,得到了非常广
预习检查
插入语句使用的是INSERT、UPDATE还是 DELETE? INSERT
TRUNCATE语句的作用是什么? 删除所有数据的同时并不删除表的结构
说说逻辑运算符有哪几种?条件运算符有哪些? 逻辑:AND、NOT、OR 条件:=、>、<、<>、 >=、<=
4
本章任务
实现对部门信息表deptInfo进行添加、删除和修改数据。
INSERT INTO deptInfo(deptName,remark) VALUES ('就业部',NULL)
运行效果如:
设置NULL值:
15
插入唯一值
唯一(UNIQUE)约束,要求该列中的值必须是完全唯一的, 并且只能出现一次。
INSERT INTO deptInfo(deptName,remark) VALUES ('就业部', '负责学员的就业')
SQL第三章练习(附答案)
![SQL第三章练习(附答案)](https://img.taocdn.com/s3/m/1ad9737f302b3169a45177232f60ddccda38e661.png)
SQL第三章练习(附答案)第三章练习1、SQL语言具有嵌入式和交互式两种使用方式2、SQL中,与‘NOT IN’等价的操作是 DA)=SOME B)<>SOME C)=ALL D)<>ALL3、假设有以下关系R,S,和T:R(BH,XM,XB,DWH)S (DWH,DWM)T(BH,XM,XB,DWH)(R)的SQL语句是select *实现σDWH=‘100’FROM RWHERE DWH IN ‘100’;4、设有如下关系R(NO,NAME,SEX,AGE,CLASS)1)插入“*****”班学号为30,姓名为“郑和”的学生记录的SQL语句是Insert into R(CLASS , NO, NAME )values(‘95031’,’30’,’郑和’);2)删除姓王的学生记录的SQL语句是Delate FROM RWHERE NAME LIKE ‘王%’;3)将所有“95101”班号改为95091的SQL语句是UPDATE R SET CLASS=‘95101’WHERE CLASS=‘95091’;5、已知有一数据库由四个表组成:student(sno,sname,ssex,sbirthday,class)、teacher(tno,tname,tsex,tbirthday,prof,depart)course(cno,cname,tno)score(sno,cno,degree)写出下列操作的SQL语句1)检索所有姓张的学生的学号和所在班级select sno,vclassFROM studentsWHERE sname LIKE ‘张%’;2)请统计出各班的人数并按升序排列select class.count(*)FROM studentsGROUP BY classORDER BY COUNT ASC;3)检索出成绩最低分大于70,最高分小于90的学生的姓名select snameFROM studentsWHERE sno IN (select sno FROM scoreGroup by snoHA VING MIN(DEGREE)>70 and MAX(DEGREE)<90);4)检索选修学生人数多于5人的某课程的任课教师姓名Select tname from teacherWhere tno in(select tno from courseWhere cno in(select cno from scoregroup by cnoHaving count(sno)>5))5)检索所有未任课的教师的姓名和所属系Select tname,departFrom teacherWhere tno not in(select tnoFrom course);6)检索选修4门以上课程的学生总成绩(不统计不及格的课程)Select sum(degree)sno from scoreWhere degree>60Group by snoHaving count(cno)>4;7)检索选修课程“C2”的学生中成绩最高的学生的学号Create view v-ssc(sno,sname,cno,cname,degree)As select student sno,sname,course,cno,cname,degreeFrom student,course,scoreWhere student.sno=score,snoAnd/doc/c49921051.html,o=http://www.doczj .com/doc/c49921051.html,o8)检索至少选修了“数据库”和“计算机网络”两门课程的学生的学号和姓名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章 SQL语言习题一、单项选择题1.SQL语言是()的语言,易学习。
A.过程化 B.非过程化 C.格式化 D.导航式2.SQL语言是()语言。
A.层次数据库B.网络数据库C.关系数据库D.非数据库3.SQL语言具有()的功能。
A.关系规范化、数据操纵、数据控制B数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。
其中最重要的,也是使用最频繁的语句是()。
A.SELECTB.INSERTC.UPDATED.DELETE5.SQL语言具有两种使用方式,分别称为交互式SQL和()。
A.提示式SQLB.用户式SQLC.嵌入式SQLD.解释式SQL6.SQL语言中,实现数据检索的语句是()。
A.SELECTB.INSERTC.UPDATED.DELETE7.下列SQL语句中,修改表结构的是()。
A.ALTERB.CREATC.UPDATE D .DELETE8.在SQL中,用户可以直接操作的是()。
A 基本表B 视图C 存储文件D 基本表和视图9.在SQL的查询语句中,对应关系代数中“投影”运算的语句是()。
A WHEREB FROMC SELECTD HAVING10.在SELECT语句中,需对分组情况满足的条件进行判断时,应使用()。
A WHEREB GROUP BYC ORDER BYD HAVING11.SQL中,与“NOT IN”等价的操作符是()。
A =ANYB <>ANYC =ALLD <>ALL12.视图建立后,在数据字典中存放的是()。
A 查询语句B 组成视图的表的内容C 视图的定义D 产生视图的表的定义第13到第16题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)其中:S#为学号,SN为姓名,SEX性别,AGE为年龄,DETP为系别,C#为课程号,CN为课程名,GRADE为成绩。
13.检索所有比“王华”年龄大的学生姓名、年龄和性别。
正确的SELECT语句是()。
A.SELECT SN, AGE, SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=’王华’)B.SELECT SN, AGE, SEX FROM S WHERE SN=’王华’C.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE WHERE SN=’王华’)D.SELECT SN, AGE, SEX FROM S WHERE AGE>王华.AGE14.检索选修课程“C2”的学生中成绩最高的学生的学号。
正确的SELECT语句是()。
A.SELECT S# FROM SC WHEREC#=’C2’ AND GRADE>= (SELECT GRADE FROM SC WHERE C#=’C2’)B.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE IN(SELECT GRADE FROM SC WHEREC#=’C2’)C.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE NOT IN(SELECT GRADE FROM SC WHEREC#=’C2’)D.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE>=ALL (SELECT GRADE FROM SC WHEREC#=’C2’)15.检索学生姓名及其所选修课程的课程号和成绩。
正确的SELECT 语句是( )。
A.SELECT S.SN ,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.S#B.SELECT S.SN, SC.C#, SC.GRADE FROM SC WHERE S.S#=SC.GRADE C.SELECT S.SN, SC.C# , SC.GRADE FROM SC, S WHERE S.S#=SC.S#D.SELECT S.SN, SC.C#, SC.GRADE FROM S, SC16.检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。
正确的SELECT 的语句是( )。
A.SELECT S#, SUM (GRDAE) FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESCHAVING COUNT (*)>=4B.SELECT S#, SUM (GRDAE) FROM SC WHERE GRADE>=60 GROUP BY S# HAVING COUNT (*)>=4ORDER BY 2 DESCC. SELECT S#, SUM (GRDAE) FROM SC WHERE GRADE>=60 HAVING COUNT (*)>=4 GROUP BY S# ORDER BY 2 DESCD. SELECT S#, SUM (GRDAE) FROM SC WHERE GRADE>=60 ORDER BY 2 DESC GROUP BY S#HAVING COUNT (*)>=417.假定学生关系是S (S#,SNAME ,SEX ,AGE ),课程关系是C (C#,CNAME ,TEACHER ),学生选课关系是SC (S#,C#,GRADE )。
要查找选修“COMPUTER ”课程的“女”学生姓名,将涉及到关系( )。
A.SB.SC ,CC.S, SC D .S,C,SC 18.下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL 操作( )不能执行。
职工表 部门表 职工号 职工名 部门号 工资 001 李红 01 580 005 刘军 01 670 025 王芳 03 720 038张强02650A. 从职工表中删除行(‘025’,‘王芳‘03’,720)B. 将行(‘005’,‘乔兴’,‘04’,750)插入到职工表中C. 将职工号为‘001’的工资改为700D. 将职工号为‘038’的部门号改为‘03’19.若用如下的SQL 语句创建一个student 表:CREAT TABLE student(NO CHAR(4) NOT NULL, NAME CHAR(10) NOT NULL, SEX CHAR(2), AGE INT),可以插到student 表中的是( )。
A.(‘1031’,‘曾华’,男,23)B.(‘1031’,‘曾华’,NULL ,NULL )C.(NULL ,‘曾华’,‘男’,‘23’)D.(‘1031’,NULL ,‘男’,23) 二、综合题1.已知学生表S 和学生选课表SC 其关系模式如下: S (SNO ,SN ,SD, PROV );SC (SNO ,CN,GR ),其中SNO 为学号,SD 为系名,PROV 为省区,CN 为课程名,GR 为分数。
试用SQL 语言实现下列操作: (1) 查询“信息系”的学生来自哪些省区。
(2) 按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。
2.设有学生表S (SNO ,SN )(SNO 为学生号,SN 为姓名)和学生选修课程表SC (SNO ,CNO ,CN ,G )(CNO 为课程号,CN 为课程名,G 为成绩),试用SQL 语言完成以下各操作: (1)创建一个视图V-SSC (SNO ,SN ,CNO ,CN ,G )。
(2)从视图V-SSC 上查询平均成绩在90分以上的SNO 和平均分。
3.假设有如下4个样本表: student (学生信息表)部门号 部门名 主任 01 人事处 高平 02 财务处 蒋华 03 教务处 许红 04学生处杜琼NO NAME SEX BIRTHDAY CLASS 108 105 107 101 109 103曾华 匡明 王丽 李军 王芳 陆军男 男 女 男 女 南09/01/77 10/02/75 01/23/76 02/20/76/ 02/10/75 06/03/7495033 95031 95033 95033 95031 95031teacher (教师信息表)NO NAME SEX BIRTHDAY PROF DEPART 804 856 825 831 李成 张旭 王萍 刘冰 男 男 女 女 12/02/58 03/12/69 05/05/72 08/14/77副教授 讲师 助教 助教 计算机系 电子工程系 计算机系 电子工程系 course (课程表) score (成绩表)CNO CNAME TNO 3-105 3-245 6-166 9-888计算机导论 操作系统 数字电路 高等数学825 804 856 100(1)列出至少有2名男生的班号。
(2)显示student 表中不姓“王”的同学记录。
(3)显示student 表中每个学生的姓名和年龄。
(4)显示student 表中最大和最小的birthday 日期值。
(5)以班号和年龄从大到小的顺序显示student 表中的全部记录。
(6)显示“男”教师及其所上的课程。
(7)列出最高分同学的no 、cno 和degree 列。
(8)列出和“李军”同性别的所有同学的name 。
(9)列出和“李军”同性别并同班的同学name 。
(10)列出所有选修“计算机导论”课程的“男”同学的成绩表。
4、今有两个关系模式:(书后P148第8题)职工(职工号,姓名,年龄,职务,工资,部门号) 部门(部门号,名称,经理名,地址,电话号)请用SQL 的GRANT 语句(加上视图机制)完成以下授权定义或存取控制功能: (1)用户王明对两个表有select 权力;(2)用户李勇对两个表有insert 和delete 权力;(3)用户刘星对职工表有查询权力,对工资字段具有更新权力; (4)用户张新具有修改这两个表的结构的权力;(5)用户周平具有对两个表所有权力(读、插、改、删数据),并具有给其他用户授权的权力;(6)用户杨兰具有从每个部门职工中查询最高工资、最低工资、平均工资的权力,他不能查看每个人的工资。
NO CNO DEGREE 103 1053-245 3-24586 75。