5.设有一个spj数据库,包括s,p,j,spj四个关系模式:
1)求**工程j1零件的**商号码sno:
sno(σsno=‘j1’(spj))
2)求**工程j1零件p1的**商号码sno:
sno(σsno=‘j1’∧pno=‘p1‘(spj))
3)求**工程j1零件为红色的**商号码sno:
sno(σpno=‘p1‘ (color=’红‘ (p)∞spj))
4)求没有使用天津**商生产的红色零件的工程号jno:
jno(spj)- jno(σcity=‘天津’∧color=‘红‘ (s∞spj∞p)
5)求至少用了**商s1所**的全部零件的工程号jno:
jno,pno(spj)÷ pno(σsno=‘s1‘ (spj))
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 中的查询。
( l )求**工程 jl 零件的**商号码 sno ;
select dist sno from spj where jno=’j1’
( 2 )求**工程 jl 零件 pl 的**商号码 sno ;
select dist sno from spj where jno='j1' and pno='p1'
3 )求**工程 jl 零件为红色的**商号码 sno ;
select sno from spj,p where jno='j1' and and color='红'
4 )求没有使用天津**商生产的红色零件的工程号 jno ;
select dist jno from spj where jno not in (sele jno from spj,p,s where '天津' and color='红' and and
5 )求至少用了**商 sl 所**的全部零件的工程号 jno ;
select jno from
spj spjx
where not exists(
select * from spj spjy
where and not exists(
select * from spj spjz where
and 由于vfp不允许子查询嵌套太深,将查询分为两步。
a、查询s1**商**的零件号。
select dist pno from spj where sno='s1'结果是(p1,p2)
b、查询哪一个工程既使用p1零件又使用p2零件。
select jno from spj where pno='p1'
and jno in (select jno from spj where pno='p2')
5.针对习题3中的四个表试用sql语言完成以下各项操作:
1)找出所有**商的姓名和所在城市。
select sname,city from s
2)找出所有零件的名称、颜色、重量。
select pname,color,weight from p
3)找出使用**商s1所**零件的工程号码。
select dist jno from spj where sno='s1'
4)找出工程项目j2使用的各种零件的名称及其数量。
select pname,qty from spj,p
where and 'j2'
5)找出上海厂商**的所有零件号码。
select pno from spj,s where and city='上海'
6)出使用上海产的零件的工程名称。
select jname from spj,s,j
where and '上海' and
7)找出没有使用天津产的零件的工程号码。
注意: select disp jno from spj where jno not in (select dist jno from spj,s where and '天津') 适用于jno是唯一或不唯一的情况。
注意: select dist jno from spj,s where and <>天津'适用于jno是唯一的情况。
8)把全部红色零件的颜色改成蓝色。
update p set color='蓝' where color='红'
9)由s5供给j4的零件p6改为由s3**。
update spj set sno='s3' where sno='s5' and jno='j4' and pno='p6'
10)从**商关系中删除**商号是s2的记录,并从**情况关系中删除相应的记录。
a、delete from s where sno=’s2’
b、delete from spj where sno=‘s2’
11)请将(s2,j6,p4,200)插入**情况关系。
insert into spj values(‘s2’,‘j6’,‘p4’,200)
数据库系统概论复习
5 试述数据库系统的特点。答 数据库系统的主要特点有 l 数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。2 数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,因此可以被多个用户 多个应用以多种不同的语言共享使用。3...
数据库系统原理试卷答案
课程 04735 一 单项选择题 本大题共15小题,每小题2分,共30分 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其 填写在题后的括号内。错选 多选或未选均无分。1.要想成功地运转数据库系统,就要在数据处理部门配备 d a.系统分析员 b.系统统计员。c.应用程序员 d.数据库管理员...
数据库系统复习
一 选择 10题10分 简答 6题30分 编程 15题30分 规范化 2题20分 应用题 1题10分 二 理解各个章节的概念和术语。三 掌握实体间的联系 er图 能举例,能将er图转化为关系模式。四 掌握数据 模式两级映像,掌握各级模式的概念和含义,映像的作用。关系型数据库的 模式两级映像是如何对应...