当前位置:首页 > 数据库第三章作业
电影:电影编号为主键,导演工作证号为外键,电影名为候选键; 出演(演员工作证号,电影编号,角色)(演员工作证号,电影编号)为主健,演
员工作证号和电影编号各为外键;
出品:为主健,电影编号和公司名称各为外键; 属于a:为主健,公司名称和演员工作证号各为外键; 属于b:为主健,公司名称,导演工作证号各为外键
(3)①σ
出生年 < 1957
(演员)∩σ
性别 =男
(演员)
SELECT *FROM 演员WHERE出生年<1957 INTERSECT
SELECT*FROM WHERE性别=男 ②ρ(Temp,σ
出品年份 =2000
(出品)∩σ
公司名称=环球公司
(出品))
π电影名,姓名(Temp 电影 导演) SELECT 电影名 FROM 出品,电影
WHERE出品.出品年份=‘2000’AND出品.公司名称=环球公司AND出品.电影编号=电影.电影编号 INTERSECT SELECT姓名
FROM 出品,电影,导演
WHERE出品.出品年份=‘2000’AND出品.公司名称=环球公司AND出品.电影编号=电影.电影编号AND导演.导演工作证号=电影.导演工作证号 ③π姓名(σ
姓名=张一
(导演) 电影 出演 演员)
SELECCT 姓名
FROM 导演,电影,出演,演员
WHERE 导演.姓名=‘张一’AND电影.导演工作证号=导演.导演工作证号AND出演.电影编号=演员.工作证号
2. 某出版社管理系统有四个实体,即出版社(Publisher)、编辑(Editor)、作者(Author)和
书籍(Book)。“出版社”的属性有出版社编码(Pid)、出版社名称(Pname)、地址(Paddr)和电话(Ptel);“编辑”的属性有编辑工号(Eid)、姓名(Ename)、性别(Egender)、出生日期;“作者”的属性有作者编码(Aid)、姓名(Aname)、性别(Agender)、电话(Atel);“书籍”的属性有国际图书分类号(Isbn)、书名(Bname)、单价(Bprice)。
这些实体间的联系及它们的属性有:作者“主编”(ZX)书籍,为1:n联系;编辑“校对”(JD)书籍,为1:n联系;出版社“出版”(CB)书籍,为1:n联系;“出版”的属性有出版日期(Pdate)。
(1) 请画出概念数据模型的E-R图,要求标注联系的约束类型和键约束。 (2) 将此E-R图表示的数据模型转换为关系模型,要求标出各关系的主键。
(3) 给出创建“出版”关系(表)的SQL语句(需要创建相应的主键约束和外键约束)。 (4) 创建一个由地址中含有“成都市”的出版社出版的书籍的视图。 (5) 请分别用关系代数表达式和SQL查询语句表达下列查询:
① 由出版社“XNJDP”出版的、由编辑名为“MTQ”校对的书籍的ISBN号和书名。 ② 由“男”性作者主编的、且由出版社“XNJDP”在2008.1.1至2008.12.31之间出版的书籍的ISBN号和书名。
③ 由“女”性编辑校对的、且单价在20至40元之间的书籍的ISBN号和书名。 答:(1)
作者编码(Aid) 姓名(Aname) 性别(Agender) 电话(Atel) 作者(Author) 1 编辑工号(Eid) 性别(Egender) 国际图书分类号(Isbn) 书名(Bname) 单价(Bprice) 主编ZX n n 1 编辑(Editor) 校对JD 书籍(Book) n 姓名(Ename) 出生日期 出版CB 1 出版日期(Pdate) 出版社(Publisher) 出版社编码(Pid) 出版社名称(Pname) 地址(Paddr) 电话(Ptel) 2)出版社Publisher (出版社编码Pid,出版社名称Pname,地址Paddr,电话Ptel, 国际图书分类号Isbn, 出版日期Pdate)
编辑Editor(编辑工号Eid,姓名Ename,性别Egender,,出生日期, 国际图书分类号Isbn) 作者Author(作者编码Aid,姓名Aname,性别Agender,电话Atel, 国际图书分类号Isbn) 书籍Book(国际图书分类号Isbn,书名Bname,单价Bprice)。
3)CREATE TABLE Publisher ( Pid char NOT NULL, Pname char NOT NULL, Paddr char NOT NULL, Ptel char NOT NULL,
Isbn char NOT NULL, Pdete datetime NOT NULL,
CONSTREINT Pid_Key PRIMARY KEY (Pid), CONSTRAINT Isbn_const REFERENCES Book( Isbn) ON DELETE CASCADE ON UPDATE CASCADE)
4) CREATE VIEW Book(Isbn, Bname,Bprice) AS
SELECT Isbn, Bname,Bprice FROM Publisher,Book
WHERE Publisher .Paddr=‘成都市’AND Publisher.Isbn= Book .Isbn 5)
①πIsbn, Bname(σPname=XNJDP(Publisher) σEname= MTQ(Editor) Book) SELECT Isbn, Bname
FROM Publisher,Book, Editor
WHERE Publisher.Pname= ’XNJDP’AND Editor.Ename= ’MTQ’ANG Publisher.Isbn= Book .Isbn
AND Editor.Isbn= Book .Isbn
②πIsbn, Bname(σPname=XNJDP(Publisher)∩σPdate<2008.12.31(Publisher)∩σ Pdate>2008.1.1(Publisher)) σAgender= ‘男‘(Author) Book) SELECT Isbn, Bname
FROM Publisher,Book, Author
WHERE Publisher.Pname= ’XNJDP’AND Publisher. Pdate<2008.12.31 AND Publisher. Pdate>2008.1.1 AND Author. Agender= ‘男’ ANG Publisher.Isbn= Book .Isbn AND Author.Isbn= Book .Isbn
③πIsbn, Bname(σEgender= ‘女‘(Editor) (σBprice>20(Book)∩σBprice<40(Book)) SELECT Isbn, Bname FROM Book, Editor
WHERE Book.Bprice>20 AND Book.Bprice<40 AND Editor. Egender= ‘女’ANG Editor.Isbn=
Book .Isbn
共分享92篇相关文档