数据库系统基础教程第七章答案.doc

上传人:b****1 文档编号:238640 上传时间:2022-10-07 格式:DOC 页数:17 大小:64.50KB
下载 相关 举报
数据库系统基础教程第七章答案.doc_第1页
第1页 / 共17页
数据库系统基础教程第七章答案.doc_第2页
第2页 / 共17页
数据库系统基础教程第七章答案.doc_第3页
第3页 / 共17页
数据库系统基础教程第七章答案.doc_第4页
第4页 / 共17页
数据库系统基础教程第七章答案.doc_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

数据库系统基础教程第七章答案.doc

《数据库系统基础教程第七章答案.doc》由会员分享,可在线阅读,更多相关《数据库系统基础教程第七章答案.doc(17页珍藏版)》请在冰豆网上搜索。

数据库系统基础教程第七章答案.doc

7.1.1

a)

CREATETABLEMovies(

title CHAR(100),

year INT,

length INT,

genre CHAR(10),

studioName CHAR(30),

producerC# INT,

PRIMARYKEY(title,year),

FOREIGNKEY(producerC#)REFERENCESMovieExec(cert#)

);

or

CREATETABLEMovies(

title CHAR(100),

year INT,

length INT,

genre CHAR(10),

studioName CHAR(30),

producerC# INT REFERENCESMovieExec(cert#),

PRIMARYKEY(title,year)

);

b)

CREATETABLEMovies(

title CHAR(100),

year INT,

length INT,

genre CHAR(10),

studioName CHAR(30),

producerC# INT REFERENCESMovieExec(cert#)

ONDELETESETNULL

ONUPDATESETNULL,

PRIMARYKEY(title,year)

);

c)

CREATETABLEMovies(

title CHAR(100),

year INT,

length INT,

genre CHAR(10),

studioName CHAR(30),

producerC# INT REFERENCESMovieExec(cert#)

ONDELETECASCADE

ONUPDATECASCADE,

PRIMARYKEY(title,year)

);

d)

CREATETABLEStarsIn(

movieTitle CHAR(100)REFERENCESMovie(title),

movieYear INT,

starName CHAR(30),

PRIMARYKEY(movieTItle,movieYear,starName)

);

e)

CREATETABLEStarsIn(

movieTitle CHAR(100)REFERENCESMovie(title)

ONDELETECASCADE,

movieYear INT,

starName CHAR(30),

PRIMARYKEY(movieTItle,movieYear,starName)

);

7.1.2

Todeclaresuchaforeign-keyconstraintbetweentherelationsMovieandStarsIn,valuesofthereferencingattributesinMovieshouldappearinMovieStarasuniquevalues.However,basedonprimarykeydeclarationinrelationStarIn,theuniquenessofmoviesisguaranteedwithmovieTitle,movieYear,andstarNameattributes.EvenwithtitleandyearasreferencingattributesthereisnowayofreferencinguniquemoviefromStarsInwithoutstarNameinformation.Therefore,suchaconstraintcannotbeexpressedusingaforeign-keyconstraint.

7.1.3

ALTERTABLEProduct

ADDPRIMARYKEY(model);

ALTERTABLEPC

ADDFOREIGNKEY(model)REFERENCESProduct(model);

ALTERTABLELaptop

ADDFOREIGNKEY(model)REFERENCESProduct(model);

ALTERTABLEPrinter

ADDFOREIGNKEY(model)REFERENCESProduct(model);

7.1.4

ALTERTABLEClasses

ADDPRIMARYKEY(class);

ALTERTABLEShips

ADDPRIMARYKEY(name);

ALTERTABLEShips

ADDFOREIGNKEY(class)REFERENCESClasses(calss);

ALTERTABLEBattles

ADDPRIMARYKEY(name);

ALTERTABLEOutcomes

ADDFOREIGNKEY(ship)REFERENCESShips(name);

ALTERTABLEOutcomes

ADDFOREIGNKEY(battle)REFERENCESBattles(name);

7.1.5

a)

ALTERTABLEShips

ADDFOREIGNKEY(class)REFERENCESClasses(class)

ONDELETESETNULL

ONUPDATESETNULL;

Inadditiontotheabovedeclaration,classmustbedeclaredtheprimarykeyforClasses.

b)

ALTERTABLEOutcome

ADDFOREIGNKEY(battle)REFERENCESBattles(name)

ONDELETESETNULL

ONUPDATESETNULL;

c)

ALTERTABLEOutcomes

ADDFOREIGNKEY(ship)REFERENCESShips(name)

ONDELETESETNULL

ONUPDATESETNULL;

7.2.1

a)

year INT CHECK(year>=1915)

b)

length INT CHECK(length>=60ANDlength<=250)

c)

studioName CHAR(30)

CHECK(studioNameIN(‘Disney’,Fox’,‘MGM’,‘Paramount’))

7.2.2

a)

CREATETABLELaptop(

speed DECIMAL(4,2) CHECK(speed>=2.0)

);

b)

CREATETABLEPrinter(

type VARCHAR(10)

CHECK(typeIN(‘laser’,‘ink-jet’,‘bubble-jet’))

);

c)

CREATETABLEProduct(

type VARCHAR(10)

CHECK(typeIN(‘pc’,‘laptop’,‘printer’))

);

d)

CREATETABLEProduct(

model CHAR(4)

CHECK(modelIN(SELECTmodelFROMPC

UNIONALL

SELECTmodelFROMlaptop

UNIONALL

SELECTmodelFROMprinter))

);

*notethisdoesn’tchecktheattributeconstraintviolationcausedbydeletionsfromPC,laptop,orprinter

7.2.3

a)

CREATETABLEStarsIn(

starNameCHAR(30)

CHECK(starNameIN(SELECTnameFROMMovieStar

WHEREYEAR(birthdate)>movieYear))

);

b)

CREATETABLEStudio(

addressCHAR(255) CHECK(addressISUNIQUE)

);

c)

CREATETABLEMovieStar(

nameCHAR(30) CHECK(nameNOTIN(SELECTnameFROMMovieExec))

);

d)

CREATETABLEStudio(

NameCHAR(30) CHECK(nameIN(SELECTstudioNameFROMMovies))

);

e)

CREATETABLEMovies(

CHECK(producerC#NOTIN(SELECTpresC#FROMStudio)OR

studioNameIN(SELECTnameFROMStudio

WHEREpresC#=producerC#))

);

7.2.4

a)

CHECK(speed>=2.0ORprice<=600)

b)

CHECK(screen>=15ORhd>=40ORprice<=1000)

7.2.5

a)

CHECK(classNOTIN(SELECTclassFROMClasses

WHEREbore>16))

b)

CHECK(classNOTIN(SELECTclassFROMClasses

WHEREnumGuns>9ANDbore>14))

c)

CHECK(shipIN(SELECTs.nameFROMShipss,Battlesb,Outcomeso

WHEREs.name=o.shipAND

b.name=o.batt

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

当前位置:首页 > 法律文书 > 调解书

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

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