|
数据库原理
. F7 y* _4 l0 O要求:- V& S+ K8 k) N
一、 独立完成,下面已将五组题目列出,请按照学院平台指定的做题组数作答,每人只答一组题目,多答无效,更多资料下载:谋学网(www.mouxue.com)100分;
. Y! k2 n: \. D: a 平台查看做题组数操作:学生登录学院平台→系统登录→学生登录→课程考试→离线考核→离线考核课程查看→做题组数,显示的数字为此次离线考核所应做哪一组题的标识;1 A5 Y; w3 a! r& j3 t5 ]
例如:“做题组数”标为1,代表学生应作答“第一组”试题;
4 J) \5 s! N& t: l8 L) U二、答题步骤:
$ _, \) U i8 g1. 使用A4纸打印学院指定答题纸(答题纸请详见附件);3 i; I! R# u4 ^+ B) d! _
2. 在答题纸上使用黑色水笔按题目要求手写作答;答题纸上全部信息要求手写,包括学号、姓名等基本信息和答题内容,请写明题型、题号;1 h( a. j2 W0 C4 r
三、提交方式:请将作答完成后的整页答题纸以图片形式依次粘贴在一个Word3 K% P* r$ V8 o! p; C* ~1 a
文档中上传(只粘贴部分内容的图片不给分),图片请保持正向、清晰;
- e8 f2 g2 J- P9 f' i0 f" V6 [- v$ ^1. 完成的作业应另存为保存类型是“Word97-2003”提交;1 c3 M5 d0 }7 Y0 U
2. 上传文件命名为“中心-学号-姓名-科目.doc”;
, i% n: _# R( u0 C$ O3. 文件容量大小:不得超过20MB。) p+ q E, V" P; T" f4 L/ }: b
提示:未按要求作答题目的作业及雷同作业,成绩以0分记!
& z* C7 u+ i) J' c5 C; l& [4 R2 Y( @% q. P1 W! B
题目如下:9 q3 v7 j, H1 }
第一组:
& o7 B) J! y8 k' o5 C3 I+ t7 ^一、 SQL语句编写题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)# M, `+ u M( [
(一)编写SQL语句
+ ]1 s3 _, r+ F- K) H1.设有职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY),$ ]# C" l/ X ~
其属性分别表示职工号、姓名、年龄、性别、工资。为每个工资低于1000元的女职工加薪200元,试写出这个操作的SQL语句。
" s" v& O0 D1 a5 o+ O! z0 s5 }2. 设某工厂数据库中有两个基本表:
' t0 R5 u) c0 ]( o; |; ]车间基本表:DEPT(DNO,DNAME,MGR_ENO),其属性分别表示车间编号、车间名和车间主任的职工号。
; f- z4 X9 {: @( D8 d; \职工基本表:ERP(ENO,ENAME,AGE,SEX,SALARY,DNO),其属性分别表示职工号、姓名、年龄、性别、工资和所在车间的编号。 7 M5 J2 ]7 |0 w! s# r; y$ V
建立一个有关女车间主任的职工号和姓名的视图,其结构如下: VIEW6(ENO,ENAME)。试写出创建该视图VIEW6的SQL语句。 - C% q4 o, m( n2 p
3. 设有一个工程供应数据库系统,包括如下四个关系模式: 5 ~; Q: A# ]2 l9 Q
 S(SNO,SNAME, STATUS,CITY);  / X& O( z$ r2 {8 ?
P(PNO,PNAME,COLOR,WEIGHT); 
0 K3 z* r+ H$ p( |' K& o, Z/ BJ(JNO,JNAME,CITY);
% c2 Y5 a+ I) K9 u+ l- j SPJ(SNO,PNO,JNO,QTY);
v6 z3 G8 o. q/ N3 Q1 K$ B. h* f供应商表S由供应商号、供应商名、状态、城市组成; 零件表P 由零件号、零件名、颜色、重量组成; 工程项目表J由项目号、项目名、城市组成;
4 O4 e- `, _+ h供应情况表SPJ由供应商号、零件号、项目号、供应数量组成; / E- Q5 t+ q1 c4 ?$ n
(1)用关系代数查询没有使用天津供应商生产的红色零件的工程号; , \+ z9 B9 \" S1 H
(2) 用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO;
$ w4 N, I6 K( t(3)用SQL查询供应工程J1零件为红色的工程号JNO; T7 j# `( `. ?: Q: n
(4)用SQL查询没有使用天津供应商生产的零件的工程号;
5 e2 _2 ?3 m d; n9 S! j5 [! t(5)用SQL语句将全部红色零件改为蓝色;
1 E8 O3 x/ w/ O. M/ P(6) 用SQL语句将(S2,P4,J6,400)插入供应情况关系。" \$ V0 w: Q! Z$ R7 A8 o- i* }
: s1 o1 f$ ^. h6 C0 }$ P. Y
(二)编写SQL语句+ ` @( T2 T# [9 l `! t+ s
1. 设有学生选课关系SC(学号,课程号,成绩),试用SQL语句检索: U0 T, w r% }) s, e8 y! h
每门课程的最高分。2 {. ~1 G) C+ o7 r8 d5 G. t5 P
2. 关系模式如下:
5 U: w8 q2 n7 ^3 q; L6 `* K商品P(PNO,PN,COLOR,PRICE) 商店S(SNO;SN,CITY) 销售SP(PNO,SNO,QTY)
( j' {" u3 V* ]; I. ~* t9 n+ |分别用关系代数和SQL写出查询语句:查询销售商品"TV”的商店名SN。
" Q$ w5 U5 m. fSP必须书写在S、P之间
- {/ ] H/ F6 K3 n) |: E7 J$ K q3. 设有关系R和S如下图所示。 5 v7 m: O0 p$ x0 D
; X/ M: ]1 ]- r6 i- f9 `4 \试用SQL语句实现:
. a3 N7 r; r6 t+ |5 E$ v(1)查询属性C>50时,R中与相关联的属性B之值。
8 g7 r! R% z9 R0 U8 P6 H(2)当属性C=40时,将R中与之相关联的属性B值修改为b4。
4 @/ e/ ]' } d J6 L5 s4. 设有关系R和函数依赖F: 1 E5 t, E: F) @' S8 _4 U+ M
R(W,X,Y,Z),F = { X→Z,WX→Y }。 试求下列问题:
9 Z7 @/ h% e) n! {/ k9 t(1)关系R属于第几范式?: I7 n0 b% l. O# I4 T
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。 . `! n6 Y; i6 Z- A
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。/ M; n2 ?! h8 P/ Y+ H* W. ~
二、 解答题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)# \- [( O3 o) C) `# {8 [
(一)解答题+ o5 A2 J) f& U
1. 设T1,T2,T3是如下三个事务,其中R为数据库中某个数据项,设R的初值为0。 0 Y+ h8 g/ b" _* M" l3 v/ M. _+ N
T1: R:=R+5 1 c2 W8 x7 q, o% ?, q- R( _9 X+ h# `
T2: R:=R*3
; u2 Q x, S" N3 z- W T3: R:=2
4 Z0 D: c( ?4 n若允许三个事务并行执行,试列出所有可能的正确结果。采用什么手段,可以解决并行调度的不一致问题?
E! S% h7 J! @* g! @0 C( T2 R" F2. 在关系模式R(U,F)中,U=ABCDEF={A→C,AC→B,B→D,C→E,EC→B} 计算(AB)+ 。 / @9 ?8 S. B( |9 q$ O c; a
3.简述数据库概念模型的主要特点。# o+ }4 F6 h1 h
4. 简述在SQL中,DELETE语句与DROP TABLE的区别。 6 w' g, j/ o0 G7 @
DELETE的作用是删除表中的元组,表的模式依然存在,而DROP TABLE 是将表的结构和元组全部删除,表被删除(DROP)后就不再存在了。 , R3 X e2 x# ]3 h
% a6 `) s& ^; L- B6 J7 W
(二)解答题
# M1 `$ C4 N* R& E设有如下信息:下列E-R图是反映产品与仓库两实体间联系的信息模型,要求
; H4 E u" m4 i0 e" v
6 L) B1 R" I" `$ c. Z2 w; X(1)给出该E-R图的关系数据库模式,并指出相应的关键字。/ @2 u: B4 j1 R# `8 v) ^' j9 p3 T5 c
(2)若仓库号、仓库名及仓库地均为字符型且长度均为10,用SQL语言为仓库关系建立相应的基表并说明实体完整性规则。
8 H' x; o! x, l& C; ~) L6 d(3)将仓库基表的查询权限授予所有用户,收回User3对仓库的查询权限。
$ M' Y+ H# m* @7 A! B9 ^9 L) q# Y0 C- u1 p+ K i
8 D& K) ~( N9 q# y G- s
) j) g1 r% k7 Q' w5 d: C' c/ W! Y4 @
* y1 C& ?5 P. i. R9 T1 _& B
* n+ `4 B: R0 J B7 S3 ^4 k& F$ S$ Z {
+ i' F, b l' h0 D8 A# @第二组:$ N) T0 b/ b6 h
一、 SQL语句编写题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)
" J! d4 c& ?) J5 r( k1 ?- r$ E(一)编写SQL语句, ]9 O1 H' f2 L& d3 ~1 Q
对于教学数据库的三个基本表$ m/ U4 [& Y- G' W
学生 S(S#,SNAME,AGE,SEX)4 [: ^, n* w3 x6 l9 w, M
学习 SC(S#,C#,GRADE) . b+ Q! _1 ?' ] g M
课程 C(C#,CNAME,TEACHER) , s$ e" p9 T0 f
试用SQL语句表示:检索Liu同学学的课程号。: c" D+ @3 V* ]9 A, |7 z6 J3 ^
6 V5 N( ` q- `5 R2 d(二)编写SQL语句! M- x1 d; p5 f' \9 t+ D
设有关系模式:Employees(ssn, name, sex, age, department) Y7 @8 `, Q$ W, |9 C
其中:ssn为员工号,name为姓名,sex为性别,age为年龄,department为工作部门。
& R9 d7 q" [. v) R# H①用SQL语句的数据定义语句,建立Employees表。其中员工号不能为空且其值是唯一的。$ b8 O0 J( b7 _6 n6 k
②用SQL语句的插入语句,将一名新员工的员工信息进行记录
9 {2 T' g: q, |9 o# n(员工号:07216008,姓名:笑笑,性别:女,年龄:24,所在部门:CS)。
6 @; X" b8 j2 a7 B③用SQL语句的修改语句,将员工笑笑的年龄改为26。
/ Q$ O. C# `( N. o! y. z& q④用SQL语句的查询语句,查询全体员工的姓名、性别和所在的部门。
% d6 i3 E8 x7 ^; _8 [4 y9 A) R! {, M1 `0 {⑤用SQL语句的控制语句,把对Employees表的查询权限授予用户simon。0 Z+ y% a0 q4 N6 f. U$ n Z; B
二、 解答题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)
, m+ S$ `$ g; |- D(一)解答题
+ ~8 F# J+ d' W& S学生运动会模型: 9 w- z' E, S( {0 ]
(1)有若干班级,每个班级包括: 班级号,班级名,专业,人数
/ @2 A) D# M( g/ j(2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号,姓名,性别,年龄
; r2 P G( Q( |(3)有若干比赛项目,包括:项目号,名称,比赛地点 & f! s& W9 R6 _; h' v
(4)每名运动员可参加多项比赛,每个项目可有多人参加
+ {! C. p! L. H5 H' N) ]& p(5)要求能够公布每个比赛项目的运动员名次与成绩
, }7 H7 h5 _( o y2 p(6)要求能够公布各个班级团体总分的名次和成绩
, ]' Z1 `0 R$ O0 Y+ A- k解题要求:
$ }: \1 {; Z+ Z(1)画出每个实体及其属性关系、实体间实体联系的E-R图.
3 V7 x- e0 E1 X(2)根据试题中的处理要求:完成数据库逻辑模型,包括各个表的名称和属性.并指出每个表的主键和外键。
( d/ [+ j7 |" b; A- f(二)解答题; n5 ^- |0 r; Y L2 H" B# |' u! v( D
1、设有关系R与S
2 k, e8 p0 W* PR: A B C9 @5 m9 K$ _8 {
2 3 4
6 @9 D- C- ~+ P: [( H1 R, F9 Y4 5 6
1 u! m! _4 a8 U" V+ N7 8 9 S: D E7 w$ p7 l, W8 ?' v; E6 R5 v
7 5) J- \+ @) V" o
4 8
" K' Q T# I5 ^( c! E" l0 L" l& a+ R计算 π3,2(R), σA=D(R×S)
[' U$ U7 w, ^! N0 J9 B2、设有两个基本表R(A,B,C)和S(A,B,C) ) C. i# h/ W2 L1 y
试用SQL查询语句表达下列关系代数表达式:% n( G! f! W+ a
(1) R-S(2)πA,B(R) πB,C(S)
+ j7 e: g5 T5 G0 Z3 C* g" M; B6 J W/ A* m0 p1 {4 S
& a5 U/ H4 r# w& ~& `8 }/ P
# s. A V0 _: E i9 b7 @* p
: a& ]/ V" l& G& D7 _3 d( X1 J N7 M% Y9 |5 A: a" F$ k/ L5 N
' V/ y9 I" l! Z0 Y0 D
& v% I# u& s2 Q$ b2 I第三组:
/ F H/ S% Y; z/ E一、SQL语句编写题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)
( I+ w7 J" |) ?9 ](一) 编写SQL语句
* y. \% I6 q1 C设有如下4个关系模式:, n w- U: v+ i: m3 V& P; e
S(SN,SNAME,CITY)
6 }) O) d) I% ]4 K( n% m* D7 |2 M6 \P(PN,PNAME,COLOR,WEIGHT)
) Z: f, Z/ Q4 s( B" [/ |5 q; R3 gJ(JN,JNAME,CITY): U' B) Y* j7 d1 \( A6 p
SPJ(SN,PN,JN,QTY)
2 J$ P9 s! t8 R0 H8 o+ S! w n其中:S表示供应商,SN为供应商编码,SNAME为供应商名字,CITY为供应商所在城市;P表示零件,PN为零件编码,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量;J表示工程,JN为工程编码,JNAME为工程名字,CITY为工程所在城市;SPJ表示供应关系,QTY表示提供的零件数量。 + u2 L5 Y1 b4 T, y( ?+ m% I5 y
写出实现以下各题功能的SQL语句:
( y3 i" B7 J- g(1) 取出所有工程的全部细节。# ]4 L$ p- T6 f
(2) 取出所在城市为南京的所有工程的全部细节。
9 N" u _% H0 v: d4 i(3) 取出为所在城市为上海的工程提供零件的供应商编码。
$ f' C% W$ z% E1 s; I" r+ W# w. ?(4) 取出为所在城市为上海或北京的工程提供红色零件的供应商编码。. K" B. Z p/ q, ?) _( [* a: [
(5) 取出供应商与工程所在城市相同的供应商提供的零件编码。
0 h+ P `/ p3 k(6) 取出至少由一个和工程不在同一城市的供应商提供零件的工程编码。
5 E8 I# [. r" P5 d(7) 取出上海供应商不提供任何零件的工程编码。) Y6 b7 A" |5 ]7 j, o1 Y
(8) 取出所有这样的一些<CITY,CITY>二元组,使得第1个城市的供应商为第2个城市的工程提供零件。
# G/ ~; ^4 ^0 d; V6 [" P: F3 e0 N8 J% a$ {8 j
(二) 编写SQL语句$ U$ q K& G$ [0 M4 U
以下给出三个基本表:# x' c# v* Y; B/ x' T
Student(学生表)的字段按顺序为学号、姓名、性别、年龄、所属院系;- M1 O) M. b3 f& {+ |8 z/ n
Course(课程表)的字段按顺序为课程编号、课程名、先行课程、课程学分;5 _5 B( S2 T) O" T+ l, Q3 a/ x% q
SC(选课表)的字段按顺序为学号、课程号、成绩。: h: K' o: G- @& g" W
各表的记录如下:
8 t4 G8 ~$ N1 Z, x1. 查询与“刘晨”在同一个系学习的学生的学号、学生姓名。# n' n7 ^5 z6 _4 x+ s. h4 s4 i# P
2. 将一个新学生记录(03020;陈冬;男;18;IS)插入Student表中。
% B o* X- h S/ R. e: \3. 将计算机科学系(CS)全体学生的成绩置零。
; Z9 g/ P e& H, W" W4. 创建信息系(IS)选修了1号课程的学生的视图IS_S1,字段包括Sno、Sname、Grade。( O- r* Q, H; u! T1 O) N3 m# _
; A Y) C% y+ x
二、解答题(更多资料下载:谋学网(www.mouxue.com)25分,共50分) l% j% k( ~4 C* d, y8 H( x9 z# \7 o6 ?
(一) 解答题# J. m# R7 W% @* X( z: [. }& d3 Y
1.设有关系模型R(A,B,C,D,E),F是R上成立的函数依赖集,F={ABC→DE,BC→D,D→E}, 试问R达到第几范式,并说明理由。
) Y" C9 t' m. B- c- Z2.设有关系R与S " i6 `2 M* T) `' K! s: L; j& m( Y- _2 Y
R: A B C
/ w* H) k2 h+ Y/ |: S2 3 4
# T! ~4 A4 A- [' z; f2 ]4 5 6 V2 \8 o0 O% T6 j8 x8 q/ Z4 L
7 8 9 S: D E
6 z* a2 K2 @ t) S& u7 U4 _* s7 5
: a" _, |5 j1 V4 W$ {1 c4 8, l: W& V) I* R1 |8 h1 N" f
计算T 7 c7 I4 `1 u* f- G
3. 设销售数据模型如下:
$ I) Z3 Z- j- T$ w; w厂家 S (SNO,SNAME,CITY )8 s0 y, n* o- B3 I/ N7 u
产品 P (PNO,PNAME,COLOR,WEIGHT)
, E/ U' q/ q* p A; ~ P# Z( z# R& b& l工程 J (JNO,JNAME,CITY), v8 G0 r" Y. i* R
销售 SPJ (SNO,PNO,JNO,QTY)
5 i& U0 {6 P1 Y3 n' V- p T$ v) x用SQL完成查询:与“长风”在同一城市的厂家名。2 S+ A. G: r7 S
* {0 S' @2 N3 D) }+ R# Q
(二) 解答题
7 G6 E1 D" H/ y9 l% C V有一个应用,包括三个实体集。 实体类型“商店”的属性有:商店编号,店名,店址,店经理。 实体类型“会员”的属性有:会员编号,会员名,地址。 实体类型“职工”的属性有:职工编号,职工名,性别,工资 。 每家商店有若干职工,但每个职工只能服务于一家商店。 每家商店有若干会员,每个会员可以属于多家商店。在联系中应反映出职工参加某商店工作的开始时间,会员的加入时间。 ; u9 f$ u1 X. d
(1)试画出反映商店、职工、会员实体类型及联系类型的ER图; + {; D' L% T7 s; f: L* N- V, T
(2)将ER图转换成关系模式,并指出每个表的主键和外键; - w* q3 o& z( h1 K6 x
(3)指出以上关系模式所达到的范式。4 v: P) G- m6 f* }
! {+ {; |6 ]$ {0 g% Z
# x1 j E0 C. E8 I
5 }" k/ F. N% Q# d- w$ K) a: j' t6 n( A+ \4 b! |6 h, @/ e$ e
( w% C7 `4 a, k$ g
' q7 F9 K( V) V
: Y# f+ V/ I% y第四组:
! T f2 U; A3 o! x& v一、 SQL语句编写题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)
0 ~) O$ F) @ a3 j1 d7 I! X(一) 编写SQL语句
8 J7 J+ k+ X: \/ l, `; J+ X: F0 \对于教学数据库的三个基本表( w3 j2 N' c( F! R8 n2 E/ c& {
学生 S(S#,SNAME,AGE,SEX)1 Z O! `7 X" \4 ` R
学习 SC(S#,C#,GRADE) 1 e- y9 w( r$ x2 X" A: G
课程 C(C#,CNAME,TEACHER) 6 ~* H: a. \8 w9 d
试用SQL语句表示:检索Liu同学学的课程号。
2 @' s; Q e1 c) \1 E& v(二) 编写SQL语句/ }0 e+ b4 S S2 ?$ k2 Q
建立一个学生关系表Student,表中有5个字段:学号Sno(字符型)、姓名Sname(字符型)、性别Sex(字符型)、年龄Age(整型)、系别Dept(字符型),其中Sno是关系的码;建立一个学生选课关系表SC,表中有3个字段:学号Sno(字符型)、课程号Cno(字符型)、成绩Grade(数值型),其中Sno、Cno是关系的码,用SQL语言完成下列功能:) K8 ]! h5 D7 l+ P* a5 ^
① 建立学生关系表Student和学生选课关系表SC。2 o, \4 l8 Y# x# T3 r2 F% b9 m8 }+ M
② 查询计算机系(’CS’)所有同学的姓名和各科成绩。
/ X, k8 L) z) S$ d3 Q③ 添加一个学生记录,学号为20020003,姓名为吴刚,性别为男,年龄为19岁,所在系为计算机系。 [2 m% n' L* w+ h5 |9 x0 {7 B2 c
④ 逻辑删除李江同学的相关记录。; \# z; l& r0 c! y
二、 解答题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)2 S8 I) a! a6 h
(一) 解答题' C; q# a6 K( b7 y% c/ q
学生运动会模型:
. |* l- T/ w) b- F& K/ V3 j6 N(1)有若干班级,每个班级包括: 班级号,班级名,专业,人数
: ^6 K1 R& A# O2 _: p S0 B8 ^(2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号,姓名,性别,年龄
$ h% K- F* [0 ?(3)有若干比赛项目,包括:项目号,名称,比赛地点 & S+ K o4 \. f
(4)每名运动员可参加多项比赛,每个项目可有多人参加
' a; o- e8 s0 g. Q3 b5 h(5)要求能够公布每个比赛项目的运动员名次与成绩
% U- W2 W. x$ h(6)要求能够公布各个班级团体总分的名次和成绩
F. |' x9 O; D) |" p- \解题要求: ) m5 y( o+ g$ S* M" N/ m' W# H4 m
(1)画出每个实体及其属性关系、实体间实体联系的E-R图.
+ N% c$ e2 \ {5 F(2)根据试题中的处理要求:完成数据库逻辑模型,包括各个表的名称和属性.并指出每个表的主键和外键。
% V% v5 Z( i0 e. t/ n: i(二) 解答题
' W- C: _2 b- j1 ]0 Y0 u根据3NF的定义及规范化方法,对关系模式R(U,F)' h$ Z9 Y2 H# D2 \* \4 u
U={学号,姓名,所在系,系主任,课程号,成绩}2 Q+ Q. x0 V' P0 J) M8 E+ K
F={学号→姓名,学号→所在系,所在系→系主任(学号,课程号)→成绩}进行分解。使其满足3NF。
- w: f, r( K1 s' [# f& g$ n0 F) ^4 m$ J& t( e4 i! [7 L! }
+ k9 l! ~5 i7 m. S2 `2 p" A- m" k& {
. b, C0 [# [4 w" }2 a- f
( a0 u, g! _* Q2 m( Y7 g
$ p3 A0 C8 G$ K" r6 b. j9 ^1 ^; v第五组:0 a$ q+ x9 P& `9 H8 [
一、 SQL语句编写题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)
3 @2 T2 M4 s/ M ~0 c, O( Z8 M/ t6 r
(一)编写SQL语句+ H3 x. k; B" w5 e! P
以下各小题题基于教学数据库的三个基本表 ( ~; d4 Z3 Y8 i3 h; S% x4 c) e
学生 S(S#,SNAME,AGE,SEX)
$ ^$ {, R+ u) i" F0 ^学习 SC(S#,C#,GRADE)
$ n7 U0 `# ^# D" {课程 C(C#,CNAME,TEACHER) 9 F. D: j1 {4 W2 r
1. 试用元组表达式和关系代数表达式表示下列查询语句:检索年龄小于23岁的男同学的姓名和学号。7 u- U0 Q( D) ^ a
2. 试用SQL的查询语句表达下列查询: 检索"王兰"同学不学的课程的课程号。
1 [3 b; V3 l- k$ \% f' W6 G3. 试用SQL的查询语句表达下列查询: 检索全部学生都选修的课程的课程号与课程名。
. x* _2 P: N$ B: s( Z" V4. 试用SQL更新语句表达以下更新操作: 把低于总平均成绩的女同学成绩提5%。6 y$ g- t5 h8 L: P/ c
' H, J1 }3 @7 O# }8 i/ M
(二)编写SQL语句
3 H/ t% s% B( a, b设有如下4个关系模式:
2 [7 V+ ^! O+ u" w3 pS(SN,SNAME,CITY)$ J( U9 h" T: `8 I [
P(PN,PNAME,COLOR,WEIGHT)
$ z7 W& `3 U: M. eJ(JN,JNAME,CITY)1 g8 L5 c) J% k8 v2 q
SPJ(SN,PN,JN,QTY) + h- p- u/ {1 G7 i
其中:S表示供应商,SN为供应商编码,SNAME为供应商名字,CITY为供应商所在城市;P表示零件,PN为零件编码,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量;J表示工程,JN为工程编码,JNAME为工程名字,CITY为工程所在城市;SPJ表示供应关系,QTY表示提供的零件数量。 ; e! F( E. B0 y" @3 ~: g
写出实现以下各题功能的SQL语句:
$ p; U# j( R( e3 q4 V/ U/ d(1) 取出所有工程的全部细节。
; g5 S6 c" X1 ^$ {1 P4 C: e6 ?; b(2) 取出所在城市为南京的所有工程的全部细节。 Z. k1 T" {* n7 {: n/ `' y7 r
(3) 取出为所在城市为上海的工程提供零件的供应商编码。
! Y' _* \& m0 X% I$ I- `(4) 取出为所在城市为上海或北京的工程提供红色零件的供应商编码。
1 X# B9 r% T7 k1 Y0 V(5) 取出供应商与工程所在城市相同的供应商提供的零件编码。
( n2 l$ P! D0 a; A. w; E(6) 取出至少由一个和工程不在同一城市的供应商提供零件的工程编码。
5 _- G0 X$ |. E4 X" G7 S(7) 取出上海供应商不提供任何零件的工程编码。
: h+ y- e1 ~% W6 _, _3 N5 l, y(8) 取出所有这样的一些<CITY,CITY>二元组,使得第1个城市的供应商为第2个城市的工程提供零件。
- e% s0 H! O6 w1 w二、 解答题(更多资料下载:谋学网(www.mouxue.com)25分,共50分)
: Y7 }* n" ]1 G4 f( Y. U(一)解答题0 r+ E* ^5 q- j h2 a# ]
东方货运公司数据库的样本数据如下。
1 G g5 p. q; N: v表名称:卡车
0 z7 ?* P8 o# s; w车号 货运站编号 类型 总行程 购入日期# @ L# n) p$ A3 X
1001 501 1 59002.7 11/06/90
3 c; s+ l, `+ y1002 502 2 54523.8 11/08/90
4 j0 K8 h' r k8 a8 k9 c+ c1003 501 2 32116.6 09/29/91$ {7 N9 h" Z4 O8 A6 P
1004 502 2 3256.9 01/14/92
* i/ U: ?1 I/ ?1 i5 m7 V表名称:货运站" K" a1 s y( `& z
货运编号 地址 电话 经理
* d6 G( m+ W( w0 e! }4 r# Y8 T; f 501 北京市东城区花市大街111号 010—67301234 何东海
/ y9 V, s5 a. S9 G `% _7 g9 ] 502 北京市海淀花园路101号 010—64248892 吴明君
4 `1 o' |' V F2 I1 B表名称:型号
7 x. ]; V, y7 p6 f5 h% x! l o2 y类型 汽车型号- Q7 \& m: @! Z' [% [" ~
1 DJS130! E( H; V+ b1 I m5 x
2 DLS121
) N8 N+ Y3 V5 _. C! F2 V/ a* I根据数据库的表结构和内容:
2 E3 {. f* h6 M* t, Ga. 指出每个表的主码和外码。如果没有外码,则写“无”。
8 V! z& i" T; @$ B$ Ub. 卡车表存在实体完整性和参照完整性吗?请详细说明。, G) ~) q& a+ K b- V
c 具体说明卡车表与运货站表之间存在着什么关系?1 u. o" N; S3 Z0 M5 C
d.卡车表中包含多少个实体?
' n; ^% I. x' O c- X* I
9 G+ [5 h' R& C0 H3 F(二)解答题- v/ ?, P) s5 `& v5 Y
1.设有关系模型R(A,B,C,D,E),F是R上成立的函数依赖集,F={ABC→DE,BC→D,D→E}, 试问R达到第几范式,并说明理由。
* o: h/ m+ \; @; u. R! K8 c2.设有关系R与S ( e+ G: B( J( ]) g |# k: [5 Q5 M
R: A B C
6 F7 q3 C- Z# h4 w+ _2 3 4
; ~4 _/ g2 Q4 i+ r' f5 b. R/ V4 5 6
& I, K1 u9 x/ L# u" k7 8 9 S: D E
8 i0 p1 t+ B* c7 @2 E9 Z7 5
, d/ o6 \9 Y v2 o- W4 8
8 V* X- h8 z/ `/ e' \计算T l2 \2 a. Q& \/ v) j7 s
3. 设销售数据模型如下:
6 y, I0 Y0 e% Y K1 X$ I厂家 S (SNO,SNAME,CITY )
$ \& c1 E! \3 u产品 P (PNO,PNAME,COLOR,WEIGHT)& q+ P& x% q+ ~% t, j
工程 J (JNO,JNAME,CITY)/ u# p5 _! d' o: |
销售 SPJ (SNO,PNO,JNO,QTY)
" h# L* f/ |9 z! n用SQL完成查询:与“长风”在同一城市的厂家名。8 a7 a) D) M7 l' [5 n1 D: p
9 ?, J) X" X/ D* X7 j4 F* N. h* f& B* U6 E4 }
|
|