SQL试题与答案

SQL试题与答案


2024年2月12日发(作者:智能手表手机)

1.为存储不同职工做的项目的材料,创建EmployeeProjects表如下:CREATETABLEEmployeeProjects(cEmployeeCodechar(6)notnull,cProjectCodechar(4)notnull,dStartDatedatetimenotnull,dEndDatedatetimenotnull,constraintpkEcodePrjCodePrimaryKey(cEmployeeCode,cProjectCode))cProjectCode属性指示职工做的项目。一名职工可以做一个以上的项目,但不可重复做同样的项目。EmployeeProjects表为2NF。关于EmployeeProjects表的以下陈述中,哪个是正确的?11)????dStartDate和dEndDate属性在功能上依赖于主键。2)????dStartDate和dEndDate属性在功能上依赖于cEmployeeCode属性。3)????dStartDate和dEndDate属性在功能上依赖于cProjectCode属性。4)????cProjectCode属性在功能上依赖于cEmployeeCode属性。2识别用来验证表是否存在于数据库中的系统存储?31)????sp_helpdb2)????sp_helpindex3)????sp_help4)????sp_helptext

6考察以下陈述:陈述1:在单个表上可约束多个规则。陈述2:如果一个新的规则约束到已经有一个规则的列上,则此新规则将替代老的规则。关于上面的陈述,以下哪一个是正确的?11)????二个陈述都为真。2)????二个陈述都为假。3)????陈述1为真和陈述2为假。4)????陈述1为假和陈述2为真。9参与工作的职工和部门的材料存储在Employee表和Department表中。许多职工有同样的名,但不会有同样的职工代码。此外,许多职工在一个部门里工作。创建如下的Employee表:CREATETABLEEmployee(cEmployeeCodechar(6)notnull,cEmployeeNamechar(20)notnull,vAddressvarchar(40)notnull,cDepartmentCodechar(4)notnull)创建如下的Department表:CREATETABLEDepartment(cDepartmentCodechar(4)notnull,cDepartmentNamechar(10)notnull

)关于这二个表,以下陈述中哪一个为正确的?21)????Employee表中cEmployeeName属性为候选键。2)????Employee表中cDepartmentCode属性为外键。3)????Department表中cDepartmentCode属性为外键。4)????Employee表中cDepartmentCode属性为候选键。10大学提供许多学科。许多学生在结束每个学科所安排的不同课程后毕业。对某些学科来说,某些课程是公共的。大学在SQLServer数据库中维持了关于课程、学科、及学生的材料。关于该系统的逻辑模型,以下陈述中哪个是正确的?21)????实体是大学,课程,学科及学生。2)????实体课程和学科之间的关系是一对多关系。.3)????实体学科和课程之间的关系是多对多关系。4)????课程和学科只是实体。12为显示摘要和按组方式的总计报告,可用以下子句中哪一个?31)????groupby2)????compute3)????computeandcomputeby4)????orderby15预测以下语句的输出:2SelectRound(1234.567,1)1)????1234.5

2)????1234.63)????12344)????1234.5616考察以下存储过程:CREATEPROCEDUREprcProc1(@AccountNo1char(4),@AccountNo2char(4),@Amountmoney)ASBEGINTRANtrnTran1??UPDATEAccount??SETmBalance=mBalance-@Amount??WHEREcAccountNo=@AccountNo1COMMITTRANUPDATEAccountSETmBalance=mBalance+@AmountWHEREcAccountNo=@AccountNo2RETURN在执行此过程时,执行了COMMITTRAN语句之后和第二个UPDATE语句之前有一个系统故障。在服务器启动后,关于此更新以下陈述中哪个是正确的?11)????在查询此表时,表中仅反映出第一个UPDATE语句所作的更新。2)????在查询此表时,表中没有反映出第一个UPDATE语句所作的更新。3)????在查询此表时,二个UPDATE语句所作的更新都正确地反映出来。4)????在查询此表时,二个UPDATE语句所作的更新都反映出来。但没有正确地反映第一个UPDATE语句所作的更新。

17考察以下陈述:陈述A:外层连接只可在二个表之间。陈述B:外层连接返回有关表中不匹配行的所有记录。关于上面陈述,以下哪个是正确的?41)????两个陈述都正确。2)????两个陈述都不正确。3)????陈述A正确和陈述B不正确。4)????陈述A不正确和陈述B正确。19在SQLServer中使用光标时,识别要执行步骤的正确次序。.1??????Step1:关闭光标??????Step2:打开光标????Step3:取出行??????Step4:释放光标??????Step5:声明光标1)????Step5,Step2,Step3,Step1,和Step42)????Step5,Step4,Step1,Step2,和Step33)????Step1,Step2,Step3,Step4,和Step54)????Step2,Step5,Step3,Step1,和Step420对于意向锁(Intentlock)以下陈述中哪一个是正确的4?1)????意向锁指出:SQLServer要获取某个资源上的共享或互斥锁。

2)????意向锁指出:SQLServer要获取某个资源上的共享锁。3)????意向锁指出:SQLServer要获取某个资源上的互斥锁。4)????意向锁指出:SQLServer要在某个资源上实施意向锁。TOP?21为存储项目材料,用以下的CREATETABLE语句创建了一个Project表。CREATETABLEProject(cProjectCodechar(6)notnull,cProjectNamechar(20)notnull,iDurationint)你需保证当插入到Project表时的项目代码应具有格式????[0-9][0-9][0-9].你将采取以下动作中哪一个,使得按所需的格式打入项目代码?31)????创建cProjectCode属性上的一个索引。2)????在cProjectCode属性上加入唯一性约束。3)????在cProjectCode属性上加入检查约束。4)????创建一个缺省,并把它约束到cProjectCode属性上。22为存储顾客的材料,用以下CREATETABLE语句创建Shopper表。CreatetableShopper(

cShopperIdchar(6)notnull,cPasswordchar(20)notnull,vFirstNamevarchar(20)notnull,vLastNamevarchar(20)notnull,vEmailIdvarchar(20)notnull,vAddressnull)在打入数据时,某些顾客的email-id没有提供。当顾客的email-id没有提供时,为打入消息'NOTAVAILABLE'你应做什么?41)????使用ALTERTABLE命令并加入关于vEmailId属性的检查约束。2)????使用ALTERTABLE命令并加入关于vEmailId属性的缺省约束。3)????使用sp_addtype语句,加入关于vEmailId属性的用户定义的数据类型。4)????使用sp_bindrule语句,把规则约束到vEmailId属性。24为存储产品的材料,你需创建Product表。此表应存储产品id,产品名,价格和现有的数量。第一个产品的产品id应从1开始,以后的产品的id应自动加一。产品的现有数量应总为正值。为创建Product表,你应使用以下语句中哪一个?21)????CREATETABLEProduct(iProductIdintIDENTITY(1,1),cProductNamechar(20)notnull,iProductPriceintnotnull,iQuantityintnotnullconstraintchkQtycheck(iQuantity<0))

2)????CREATETABLEProduct(iProductIdintIDENTITY(1,1),cProductNamechar(20)notnull,iProductPriceintnotnull,iQuantityintnotnullconstraintchkQtycheck(iQuantity>0))3)????CREATETABLEProduct(iProductIdintnotnullconstraintdefProductIdDEFAULT1,cProductNamechar(20)notnull,iProductPriceintnotnull,iQuantityintnotnullconstraintchkQtycheck(iQuantity<0))4)????CREATETABLEProduct(iProductIdintnotnullconstraintdefProductIdDEFAULT1,cProductNamechar(20)notnull,iProductPriceintnotnull,iQuantityintnotnullconstraintchkQtycheck(iQuantity>0))25为存储组中不同部门的材料,创建了以下的Department表。CREATETABLEDepartment

(cDepartmentCodechar(30)notnull,vDepartmentNamevarchar(30)notnull,vDepartmentHeadvarchar(25)notnull,vLocationvarchar(30)null)你需修改此表的结构,以便cDepartmentCode属性实施实体完整性。你应采取以下动作中哪一个?31)????修改表结构,加入关于cDepartmentCode属性的主键约束。2)????修改表结构,把关于cDepartmentCode属性的NULL改变成NOTNULL。3)????修改表结构,加入关于cDepartmentCode属性的唯一性约束。4)????修改表结构,加入关于cDepartmentCode属性的缺省约束。26考察以下陈述:陈述1:快照复制允许用户自动地处理和更新数据。4陈述2:合并复制(Mergereplication)是一种不经常变动的复制数据的方法。关于上面陈述,以下哪一个是正确的?1)????两个陈述都正确。2)????两个陈述都不正确。3)????陈述1正确,陈述2不正确。4)????陈述1不正确,陈述2正确。27为存储学院中学生的材料,创建Student表如下:

CREATETABLEStudent(cStudentCodechar(3)notnull,cStudentNamechar(40)notnull,cStudentAddresschar(50)notnull,cStudentStatechar(30)notnull,cStudentCitychar(30)notnull,cStudentPhonechar(40)notnull,cStudentEmailchar(40)null)每天要基于学生的代码对Student表执行许多个查询。没有两个学生可以有同样的学生代码。在每学期结束时,新学生的材料要打入到Student表中。3你要改进查询的性能。你应创建什么类型的索引?1)????cStudentCode属性上的簇索引(clusteredindex)。2)????cStudentCode属性上的非簇索引。3)????cStudentCode属性上的唯一性簇索引。4)????cStudentCode属性上的唯一性非簇索引。28识别将以格式显示当前日期的SQL语句。31)????Selectdate=‘’,getdate()2)????Selectconvert(char(12),4,getdate())3)????Selectconvert(char(12),getdate(),4)4)????Selectconvert(char(12),getdate(),104)29你给出以下命令,创建Orders表的cOrderNo属性的索引,使用以下语句:

CREATEINDEXidxOrderonOrders(cOrderNo)你应使用以下命令中哪一个来验证创建在Orders表上的索引?21)????sp_helpindexidxOrder2)????sp_helpindexOrders3)????sp_helpindexcOrderNo4)????sp_No??30以下哪个查询能够在titles表中找出预付款大于商业类书籍平均预付款的所有书籍的标题。41)????Selecttitlefromtitleswhereadvance>(Selectadvancefromtitleswheretype=‘business’)2)????Selecttitlefromtitleswhereadvance>(Selectavg(advance)fromtitleswheretype=‘business’)

3)????Selecttitlefromtitleswhereadvance>=(Selectavg(advance)fromtitleswheretype=‘business’)4)????Selecttitlefromtitleswhereadvance>avg(advance)andtype=‘business’31在web站点上,如果知道其他人的email-id的话,人们可搜索另一个人的地址和电话号码。接收该人的emailid和返回他的地址和电话号码的过程创建如下:CREATEPROCEDUREprcGetAddress????@EmailIdchar(30),@Addresschar(30)output,@Phonechar(15)outputASSELECT@Address=cAddress,@Phone=cPhoneFROMSubscriberWHEREcEmailId=@EmailId通过使用上面过程接收emailid和显示地址和电话号码,你可用以下过程中哪一个?41)????CREATEPROCEDUREprcDisplayAddress@Emailchar(30)

ASDECLARE@Addresschar(50)OUTPUT,@Phonechar(15)OUTPUTEXECprcGetAddress@Email,@Address,@PhoneSELECT@Address,@PhoneRETURN2)????CREATEPROCEDUREprcDisplayAddress@Emailchar(30)ASDECLARE@Addresschar(50),@Phonechar(15)EXECprcGetAddress@Email,@Address,@PhoneSELECT@Address,@PhoneRETURN3)????CREATEPROCEDUREprcDisplayAddress@Emailchar(30)ASDECLARE@Addresschar(50),@Phonechar(15)SELECT@Address,@PhoneRETURN4)????CREATEPROCEDUREprcDisplayAddress@Emailchar(30)ASDECLARE@Addresschar(50),@Phonechar(15)EXECprcGetAddress@Email,@AddressOUTPUT,@PhoneOUTPUTSELECT@Address,@Phone

RETURN32考察以下陈述:3陈述1:DBMS有助于降低数据冗余。.陈述2:DBMS对未授权用户的数据不提供安全性。关于上面陈述,以下中哪一个是正确的?1)????两个陈述都正确。2)????两个陈述都不正确。3)????陈述1正确,陈述2不正确。4)????陈述1不正确,陈述2正确。33为存储在联机礼品商店出售的不同礼品项目,使用以下Gift表:CREATETABLEGift(iGiftCodeintnotnull,cGiftDescriptionchar(10)notnull,cSizechar(40)notnull,iWeightintnotnull,mPricemoneynotnull)创建一个过程,它接收礼品代码,如果礼品出现在表中返回0,不出现返回1。创建此过程如下:CREATEPROCEDUREprcGift@GiftCodeintASIFEXISTS(SELECT*FROMGiftWHEREiGiftCode=@GiftCode)

BEGIN??RETURN0ENDELSEBEGIN??RETURN1END你应使用以下语句中哪一个,来显示关于过程iGiftCode=1004的返回状态?31)????DECLARE@ReturnStatusintEXEC@ReturnStatus=prcGift1004SELECT@ReturnStatus2)????DECLARE@ReturnStatusintEXECprcGift1004,@ReturnStatusSELECT@ReturnStatus3)????DECLARE@ReturnStatusintEXECprcGift1004,@ReturnStatusOUTPUTSELECT@ReturnStatus4)????DECLARE@ReturnStatusintEXECprcGift=@ReturnStatus,1004SELECT@ReturnStatus????34旅行社把不同游览胜地的材料存储在以下的Resort表中。

CREATETABLEResort(cResortCodechar(50)notnull,cResortNamechar(30)notnull,cAddresschar(50)notnull,cCitychar(30)notnull,mPricemoneynull,mDiscountmoneynull)确定每个城市的打折。为更新某个城市的打折,创建了以下过程:CREATEPROCEDUREprcUpdateDiscount@Citychar(30),@DiscountmoneyASIFEXISTS(SELECT*FROMResortWHEREcCity=@City)BEGIN??UPDATEResort??SETmDiscount=@Discount??WHEREcCity=@City??RETURN0ENDELSEBEGIN

??RETURN1END如果表被成功地更新,返回0,否则返回1。你应使用以下语句中哪一个把“Houston”城市的打折金额更新为$10?。此语句应显示该过程的返回状态。31)????DECLARE@ReturnValueintEXEC@ReturnValue=prcUpdateDiscount'Houston',10SELECT@ReturnValue2)????DECLARE@ReturnValueintOUTPUTEXEC@ReturnValue,prcUpdateDiscount,'Houston',10SELECT@ReturnValue3)????DECLARE@ReturnValueintEXECprcUpdateDiscount'Houston',10,@ReturnValueOUTPUTSELECT@ReturnValue4)????DECLARE@ReturnValueintEXECprcUpdateDiscount=@ReturnValue,'Houston',10SELECT@ReturnValue35按照关系理论,记录称为什么?41)????relation(关系)2)????tuple(元组)3)????cardinality(基数)4)????degree(度)

36联机花店在以下Flower表中存储花的材料:CREATETABLEFlower(cFlowerCodechar(5)notnull,cFlowerNamechar(30)notnull,cFlowerDescriptionchar(50)notnull,mPricemoneynotnull,mShippingChargesmoneynotnull,iWeightintnotnull)在花的平均运输费达到$8之前,对所有的花的运输费要提高$1。但最大的运输费不应超过$10。为提高运输费,你将使用以下批处理中哪一个?11)????WHILE(SELECT??BEGIN??IF(SELECTMAX(mShippingCharges)+1FROMFlower)>10??????BREAK??ELSEBeginUPDATEFlowerSETmShippingCharges=mShippingCharges+1CONTINUE??EndEnd2)??????????WHILE(SELECTMAX(mShippingCharges)FROMFlower)<8AVG(mShippingCharges)FROMFlower)<8

BEGINUPDATEFlowerSETmShippingCharges=mShippingCharges+1IF(SELECTAVG(mShippingCharges)+1FROMFlower)>10??BREAKELSE??CONTINUEEND3)??????????WHILE(SELECTAVG(mShippingCharges)FROMFlower)<8BEGINUPDATEFlowerSETmShippingCharges=1IF(SELECTMAX(mShippingCharges)+1FROMFlower)>10??BREAKELSE??CONTINUEEND4)??????????WHILE(SELECTMAX(mShippingCharges)FROMFlower)<8BEGINUPDATEFlowerSETmShippingCharges=1IF(SELECTAVG(mShippingCharges)+1FROMFlower)>10??BREAK

ELSE??CONTINUEEND????37职工材料维护在Employee表中。公司有一个计划,鼓励职工拥有自己的汽车。当职工利用此计划时,与计划有关的材料记录在CarScheme表中。但计划可以被已在公司服务一年的职工所用。参加的日期存储在称为dDateOfJoining属性的Employee表中,获得此计划的日期维护在CarScheme表的dDateOfScheme属性中。3你将如何保证汽车计划只能被在公司中服务了一年的那些职工所用?1)????在dDateOfScheme属性上创建一个缺省。.2)????创建一个规则并把它约束在dDateOfScheme属性上。3)????在Employee表上创建一个插入触发器。4)????在CarScheme表上创建一个插入触发器。38一家化装品公司维护了三张表,一张存储有商标的产品(称为BrandItems),一张为本地制造的产品(称为LocalItems),一张用于事务(称为ItemsSold)。当产品出售时,通过向表中加入一行,把事务记录在ItemsSold表中。当物品出售时,为更新产品现有的数量需创建以下触发器中哪一个?11)????ItemsSold表上的一个更新触发器以更新二张产品表。2)????BrandItems表和LocalItems表上的一个更新触发器。3)????BrandItems表和LocalItems表上的一个插入触发器。4)????ItemsSold表上的一个插入触发器以更新二张产品表。39某个高级中学以十进制数形式存储了学生的考试成绩。他们用称为float的数据类型来存储十进制值。分数被打入到用以下语句创建的表中:

CREATETABLEStudentMarks(cRegistrationNochar(6)primarykey,cBatchCodechar(6)notnull,fTest1floatnotnull,fTest2floatnotnull,fPracticalfloatnotnull,fTotalfloat)需要一份显示分数的报告,分数被舍入到最近整数。1.为产生此报告应使用以下查询中哪一个?1)????SELECTcRegistrationNo,round(fTotal)FROMStudentMarks2)????SELECTcRegistrationNo,round(fTotal,0)FROMStudentMarks3)????SELECTcRegistrationNo,round(fTotal,-1)FROMStudentMarks4)????SELECTcRegistrationNo,round(fTotal,1)FROMStudentMarks40评估HughandCo公司中所有职工的信息维护在称为Appraisal的表中。用以下语句创建此表:CREATETABLEAppraisal(cEmployeeCodechar(6)notnull,dDateOfAppraisaldatetimenotnull,cReviewerchar(15)notnull,cStatuschar(3)notnull)

每季度评估职工。dDateOfAppraisal属性包含最近评估的日期。用以下查询中哪一个可让职工找出他的下一次评估的日期?41)????SELECTdateadd(qq,3,dDateofAppraisal)FROMAppraisal2)????SELECTdatepart(mm,dDateOfAppraisal)+3FROMAppraisal3)????SELECTdatepart(mm,dDateOfAppraisal)FROMAppraisal4)????SELECTdateadd(mm,3,dDateOfAppraisal)FROMAppraisal41关于触发器以下陈述中哪一个是正确的?1)????对于表你只可有一个更新、一个删除、及一个插入触发器。2)????对于表你可有一个以上的更新触发器。3)????删除触发器在表上发生删除操作之前激活。4)????触发器可显式地被执行。42用哪个存储过程来验证在表上成功地创建了索引?41)????sp_help2)????sp_helpdb3)????sp_helpindex4)????sp_helptext43工作的单个单元必须具有四种性质,称为原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、及持久性(Durability)。以下SQLServer特性中哪一个可保证事务的持久性?31)????事务管理(TransactionManagement)2)????上锁(Locking)3)????日志(Logging)

4)????规则和约束


发布者:admin,转转请注明出处:http://www.yc00.com/num/1707710329a1520828.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信