数据库设计例题共9页.docx

上传人:b****2 文档编号:20136839 上传时间:2023-04-25 格式:DOCX 页数:11 大小:49.28KB
下载 相关 举报
数据库设计例题共9页.docx_第1页
第1页 / 共11页
数据库设计例题共9页.docx_第2页
第2页 / 共11页
数据库设计例题共9页.docx_第3页
第3页 / 共11页
数据库设计例题共9页.docx_第4页
第4页 / 共11页
数据库设计例题共9页.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

数据库设计例题共9页.docx

《数据库设计例题共9页.docx》由会员分享,可在线阅读,更多相关《数据库设计例题共9页.docx(11页珍藏版)》请在冰豆网上搜索。

数据库设计例题共9页.docx

数据库设计例题共9页

习题(xítí)一

1.用SQL的有关(yǒuguān)语句定义

1)学生关系Student,包括(bāokuò)学号Sno、姓名SN、年龄SA;

2)课程(kèchéng)关系Course,包括课程号Cno、课程名CN、任课教师CT;

3)学生选课关系,包括(bāokuò)Sno、Cno和成绩G。

注意:

说明主键码和外键码(如果有的话),并在键码属性上建立索引。

2.按题1的学生关系模式,用SQL的有关语句

1)授予赵华对学生关系Student的插入和修改权限;

2)插入任意3个学生的完整信息;

3)修改所有学生的年龄(加1)。

3.结合题1定义的学生选课数据库,用SQL语句查询计算机系学生数据库课的成绩,输出学生姓名和成绩,按成绩排序(降序),若成绩相同,再按学号排序(升序)。

4.按嵌入式SQL的格式插入任意一个学生的学号、姓名、系别和年龄。

(6分)

5.商店销售商品的数据库,涉及如下数据:

商店号、商店名、地址

商品号、商品名、单价。

某商店销售某商品的数量和日期。

1)设计E/R图(属性名用中、英文均可);

2)转换成关系模型(注明键码和函数依赖)。

6.有关图书发行的关系模型如下:

书店S(书店号SNo,书店名SN,地址A)

图书B(书号BNo,书名BN,价格P)

图书馆L(馆号LNo,馆名LN,城市C)

图书发行LBS(LNo,BNo,SNo,发行量Q)

分别用关系代数和SQL语言表达如下查询:

图书馆L4(馆号)收藏图书的书名和出售该书的书店名。

7.写出3个关系模式分别满足:

1)是1NF,不是2NF;

2)是2NF,不是3NF;

3)是3NF,也是BCNF;

各用两句话分别说明你所写的关系模式是前者,不是(或也是)后者。

1.1)CREATETABLEStudent(

SnoINTPRIMARYKEY,

SNCHAR(30),

SAINT

);

2)CREATETABELCourse(

CnoINTPRIMARYKEY,

CNCHAR(30),

CTCHAR(30)

);

3)CREATETABELSC(

SnoINT,

CnoINT,

GINT,

PRIMAYRKEY(Sno,Cno),

FOREIGNKEY(Sno)REFERENCESStudent(Sno),

FOREIGNKEY(Cno)REFERENCESCourse(Cno)

);

 

2.1)GRANTINSERT,UPDATE,ONStudentTO赵华;

2)INSERTINTOStudent

(TABLE(01001,’赵华’,19),

(01002,’李芳’,18),

(01003,’刘红’,20),

);

3)UPDATEStudent

SETSA=SA+1;

3.SELECTSN,G

FROMStudent,Course,SC

WHEREStudent.Sno=SC.SnoANDCourse.Cno=SC.Cno

ANDCourse.CN=’数据库’

ORDERBYGDESC,Sno;

4.1)说明(shuōmíng):

EXECSQLBEGINDECLARESECTION;

intsno;

charsname[30];

intsage;

charSQLSTATE[6];

EXECSQLENDDECLARESECTION;

2)赋值:

sno:

=01001;

sname:

=’赵华’;

sage:

=19;

3)插入(chārù):

EXECSQLINSERT

INTOStudent

VALUES(:

sno,:

sname,:

sage);

5.1)

2)商店(shāngdiàn)(商店(shāngdiàn)号,商店(shāngdiàn)名,地址)商店号→商店名,地址

商品(商品号,商品名,单价)商品号→商品名,单价

销售(xiāoshòu)(商店(shāngdiàn)号,商品号,数量(shùliàng),日期)商店号,商品号→数量(shùliàng),日期

6.1)πBN,SN(σLNo=L4(BLBSS))

2)SELECTBN,SN

FROMB,LBS,S

WHEREB.BNo=LBS.BNoANDLBS.SNo=S.SNo

ANDLBS.LNo=L4;

7.1)学生(xuésheng)选课(学号,姓名,课程号,成绩)

属性不可分,是1NF;存在非主属性对键码的部分依赖(学号,课程号

姓名),不是2NF。

2)学生(学号,姓名,系别,系主任)

键码为单属性,不存在部分依赖,是2NF;存在非主属性对键码的传递依赖(学号→姓名,系别;系别

学号;系别→系主任;学号

系主任),不是3NF。

3)学生(学号,姓名,年龄)

非主属性(姓名,年龄)对键码不存在部分依赖和传递依赖,是3NF;

主属性(学号)对键码也不存在部分依赖和传递依赖,是BCNF。

习题(xítí)二

 

一、一个简单的著作(zhùzuò)管理数据库,涉及如下数据:

作家Author:

作家号Authorno、姓名(xìngmíng)Name、性别Sex和级别Grade

作品Book:

书号Bookno、书名Title、种类(zhǒnglèi)Type、发行时间Date和出版社Publish

一位作家可以有多本著作,一本著作可同时多人合著(hézhù),要求能描述作家出书的情况。

1)、设计简单的著作管理系统的E/R图;

 

2)转换成关系模型(请注明每个关系的键码)

二、设有一个简单的经销商产品数据库如下:

生产厂商关系:

Producer(PrNo,Name,Addr,Tel),分别表示生产厂商号、

厂商名称、地址和联系电话

产品关系:

Product(TtNo,Brand,Model,Price),分别表示产品号、名称、

品牌型号和价格等

供应关系:

Supply(PrNo,PtNo,Quantity),分别表示生产厂商号、产品号以及数量

1)、查找生产厂商“方正科技公司”供应的产品的名称和价格,结果按价格的

降序排列;

2)、求各类产品的最高价格、最低价格、平均价格和数量;

3)、查询一种产品供应供应数量在500件以上的生产厂商名称。

三、用SQL的有关(yǒuguān)语句定义:

(共12分,每小题4分)

1)、航班关系(guānxì)Flight,包括航班号Number、机型Kind、起飞日期GoDate;

2)、乘客关系Customer,包括身份证号码Idno、姓名(xìngmíng)Name、性别Sex、地址Addr;

3)、搭乘关系(guānxì)Booking,包括身份证号码Idno、航班号Number、座位Seat;

要求说明每个关系的主键码和外键码(如果有的话(dehuà)),并在键码属性上建立索引。

4)、授予王飞对航班关系Flight的修改和删除的权限;

5)、删除2001年4月1日的所有航班记录;

6)、将航班号为KH3001的机型改为波音757;

7)、对航班关系的日期属性进行约束,使得其日期不得是2000年以前的。

四、按嵌入式SQL的格式在给出的产品关系Product中插入任意一个产品的产品号、

名称、品牌型号、价格等。

一、

1)、简单图书管理系统的E/R图为:

注:

Part表明作家是独立完成著作还是第一、第二作者等。

2)转换成关系模型为:

Author(Authorno,Name,Sex,Grade)

Book(Bookno,Title,Type,Date,Publish)

Write(Authorno,Bookno,Part)

二、SQL查询语句:

1)、SELECTBrand,Price

FROMProduct

WHEREPtNoIN

(SELECTPtNo

FROMSupply,Producer

WHERESupply.PrNo=Producer.PrNoANDName=“方正科技公司(ɡōnɡsī)”)

ORDERBYPriceDESC;

或者(huòzhě):

SELECTBrand,Price

FROMProduct,Supply,Producer

WHEREProduct.PtNo=Supply.PtNoANDSupply.PrNo=Producer.PrNo

ANDName==“方正科技公司(ɡōnɡsī)”

ORDERBYPriceDESC;

或者(huòzhě):

SELECTBrand,Price

FROMProduct

WHEREPtNoIN

(SELECTPtNo

FROMSupply

WHEREPrNoIN

(SELECTPrNo

FROMProducer

WHEREName==“方正科技公司(ɡōnɡsī)”))

ORDERBYPriceDESC;

2)、SELECEBrand,max(Price)AS最高价,min(Price)AS最低价,

avg(Price)AS平均价,count(Brand)AS数量

FROMProduct

GROUPBYBrand;

3)、SELECTDISTINCTName

FROMProducer

WHEREPrNoIN(SELECTPrNo

FROMSupply

WHEREQuantity>500);

或者:

SELECTDISTINCTName

FROMProducer,Supply

WHEREProducer.PrNo=Supply.PrNoANDQuantity>500;

三、用SQL的有关语句(yǔjù)定义:

(共12分,每小题4分)

1)、CREATETABLEFlight

(NumberCHAR(10)NOTNULLPRIMARYKEY,

KindCHAR(10),

GoDateDATE);

CREATEINDEXFkeyONFlight(Number);

2)、CREATETABLECustomer

(IdnoVARCHAR(18)NOTNULLPRIMARYKEY,

NameCHAR(10)NOTNULL,

SexBOOLEAN,

AddrVARCHAR(30));

CREATEINDEXCkeyONCustomer(Idno);

3)、CREATETABLEBooking

(IdnoVARCHAR(18)NOTNULL,

NumberCHAR(10)NOTNULL,

SeatCHAR(4),

PRIMARYKEY(Idno,Number),

FOREIGNKEY(Idno)REFERENCESCustomer(Idno),

FOREIGNKEY(Number)REFERENCESFlight(Number));

CREATEINDEXBkeyONBooking(Idno,Number);

三SQL的有关(yǒuguān)语句实现:

(共12分,每小题3分)

1)、GRANTUPDATE,DELETEONFlightTO王飞

2)、DELETEFROMFlightWHEREGoDate=“2001-04-01”;

3)、UPDATE FlightSETKind=“波音757”

WHERENumber=“KH3001”;

4)、在定义Flight时,加入对属性GoDate的约束(yuēshù)如下:

GoDateDATECHECK(GoDate>=“2001-01-01”),

四、(8分)

1)说明(shuōmíng):

EXECSQLBEGINDECLARESECTION;

charpno[10];

charb[20];

charm[20];

floatp;

charSQLSTATE[6];

EXECSQLENDDECLARESECTION;

2)赋值:

pno:

=“P300101”;

b:

=“内存条”;

m:

=“Kindmax128”;

p:

=136;

3)插入(chārù):

EXECSQLINSERTINTOProduct

VALUES(:

pno,:

b,:

m,:

p);

内容总结

(1)习题一

用SQL的有关语句定义

学生关系Student,包括学号Sno、姓名SN、年龄SA

(2)3)、查询一种产品供应供应数量在500件以上的生产厂商名称

(3)p:

=136

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1