SQL认证带答案复习题.docx

上传人:b****1 文档编号:2829782 上传时间:2023-05-04 格式:DOCX 页数:48 大小:94.05KB
下载 相关 举报
SQL认证带答案复习题.docx_第1页
第1页 / 共48页
SQL认证带答案复习题.docx_第2页
第2页 / 共48页
SQL认证带答案复习题.docx_第3页
第3页 / 共48页
SQL认证带答案复习题.docx_第4页
第4页 / 共48页
SQL认证带答案复习题.docx_第5页
第5页 / 共48页
SQL认证带答案复习题.docx_第6页
第6页 / 共48页
SQL认证带答案复习题.docx_第7页
第7页 / 共48页
SQL认证带答案复习题.docx_第8页
第8页 / 共48页
SQL认证带答案复习题.docx_第9页
第9页 / 共48页
SQL认证带答案复习题.docx_第10页
第10页 / 共48页
SQL认证带答案复习题.docx_第11页
第11页 / 共48页
SQL认证带答案复习题.docx_第12页
第12页 / 共48页
SQL认证带答案复习题.docx_第13页
第13页 / 共48页
SQL认证带答案复习题.docx_第14页
第14页 / 共48页
SQL认证带答案复习题.docx_第15页
第15页 / 共48页
SQL认证带答案复习题.docx_第16页
第16页 / 共48页
SQL认证带答案复习题.docx_第17页
第17页 / 共48页
SQL认证带答案复习题.docx_第18页
第18页 / 共48页
SQL认证带答案复习题.docx_第19页
第19页 / 共48页
SQL认证带答案复习题.docx_第20页
第20页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

SQL认证带答案复习题.docx

《SQL认证带答案复习题.docx》由会员分享,可在线阅读,更多相关《SQL认证带答案复习题.docx(48页珍藏版)》请在冰点文库上搜索。

SQL认证带答案复习题.docx

SQL认证带答案复习题

补充习题

第1题

你有一个名为John的用户。

他对Sales架构有SELECT访问权。

你需要从Sales.SalesOrder表消除John的SELECT访问权,但又不能影响他的其他权限。

应使用哪一条Transact-SQL语句?

A.DROPUSERJohn;

B.DENYSELECTONSales.SalesOrderTOJohn;

C.GRANTDELETEONSales.SalesOrderTOJohn;

D.REVOKESELECTONSales.SalesOrderFROMJohn;()

答案:

B

deny,拒绝授予主体权限,防止主体通过其组或角色成员身份继承权限。

revoke,取消以前授予或拒绝了的权限。

比如:

如果John属于db_datareader数据库角色,D选项,仅仅是取消了显示授予John的select权限;但John同样可以通过db_datareader角色获得读取Sales.SalesOrder表的权限;

而如果使用B选项,则可以彻底禁止John读取Sales.SalesOrder表,因为在评估权限时,deny优先于通过其他任何方式获取的权限。

第2题

你的数据库有5GB,并包含名为SalesHistory的表。

表中频繁插入和更新销售信息。

你发现发生了过度页拆分。

你需要确保减少SalesHistory表的页拆分。

应使用哪个代码片段?

A.ALTERDATABASESalesMODIFYFILE(NAME=Salesdat3,SIZE=10GB);

B.ALTERINDEXALLONSales.SalesHistoryREBUILDWITH(FILLFACTOR=60);

C.EXECsys.sp_configure'fillfactor(%)','60';

D.UPDATESTATISTICSSales.SalesHistory(Products)WITHFULLSCAN,NORECOMPUTE;

答案:

B

第3题

你有一个名为dbo.Customers的表。

该表是使用下面的Transact-SQL语句创建的:

CREATETABLEdbo.Customers(CustomerIDintIDENTITY(1,1)PRIMARYKEYCLUSTERED,AccountNumbernvarchar(25)NOTNULL,FirstNamenvarchar(50)NOTNULL,LastNamenvarchar(50)NOTNULL,AddressLine1nvarchar(255)NOTNULL,AddressLine2nvarchar(255)NOTNULL,Citynvarchar(50)NOTNULL,StateProvincenvarchar(50)NOTNULL,Countrynvarchar(50)NOTNULL,PostalCodenvarchar(50)NOTNULL,CreateDatedatetimeNOTNULLDEFAULT(GETDATE()),ModifiedDatedatetimeNOTNULLDEFAULT(GETDATE()))

你创建了一个存储过程,其中包含dbo.Customers表的AccountNumber、Country和StateProvince列。

该存储过程接受一个参数来根据AccountNumber列筛选输出。

你需要优化该存储过程的性能。

你不得更改现有表结构。

应使用哪一条Transact-SQL语句?

A.CREATESTATISTICSST_Customer_AccountNumberONdbo.Customer(AccountNumber)WITHFULLSCAN;

B.CREATECLUSTEREDINDEXIX_Customer_AccountNumberONdbo.Customer(AccountNumber);

C.CREATENONCLUSTEREDINDEXIX_Customer_AccountNumberONdbo.Customer(AccountNumber)WHEREAccountNumber='';

D.CREATENONCLUSTEREDINDEXIX_Customer_AccountNumberONdbo.Customer(AccountNumber)INCLUDE(Country,StateProvince);

答案:

D

第4题

你要创建一个表来存储客户的GPS位置。

你需要确保该表允许你找出指定销售地区的客户,并计算客户与最近店铺之间的距离。

应使用哪种数据类型?

A.geometry

B.geography

C.nvarchar(max)

D.varbinary(max)FILESTREAM

答案:

B

第5题

你计划将名为SmallKey的新列添加到Sales.Product表,该列将在唯一约束中使用。

你需要确保在添加新列时,下面的信息适用:

'a1'和'A1'被视作不同的值

ORDERBY子句中'a'和'A'排在'b'和'B'之前

你需要选择符合新列的要求的排序规则。

你选择哪种排序规则?

A.Latin1_General_BIN

B.SQL_Latin1_General_CP1_CI_AI

C.SQL_Latin1_General_CP1_CI_AS

D.SQL_Latin1_General_CP1_CS_AS

答案:

D

第6题

你有多个表,它们表示同类实体的各种属性。

属性值的类型有text、geometry、varchar(max)以及指定为“bitNOTNULL”数据类型的用户类型。

你计划将多个表的数据整合为一个表。

该表将利用SPARSE选项来使用半结构化存储。

你的任务是确定与SPARSE选项兼容的数据类型。

哪个数据类型与SPARSE选项兼容?

A.text

B.geometry

C.varchar(max)

D.定义为'bitNOTNULL'的用户定义类型

答案:

C

第7题

你需要创建一个存储过程,该过程接受名为@Customers的表值参数。

应使用哪个代码片段?

A.CREATEPROCEDUREAddCustomers(@Customersvarchar(max))

B.CREATEPROCEDUREAddCustomers(@CustomersCustomerREADONLY)

C.CREATEPROCEDUREAddCustomers(@CustomersCustomerTypeOUTPUT)

D.CREATEPROCEDUREADDCUSTOMERS(@Customersvarchar(max))ASEXTERNALNAMECustomer.Add.NewCustomer

答案:

B

第8题

你有一个用用户定义函数实现的计算列。

该用户定义函数返回一个格式化的帐号。

必须为该列建索引,以提供足够的搜索性能。

你计划对该计算列创建索引。

你需要确定该用户定义函数的ObjectPropertyEX值的有效组合。

应使用哪种组合?

A.IsDeterministic=TrueIsSystemVerified=TrueUserDataAccess=FalseSystemDataAccess=False

B.IsDeterministic=TrueIsSystemVerified=TrueIsPrecise=TrueIsTableFunction=True

C.IsDeterministic=FalseIsSystemVerified=TrueUserDataAccess=FalseSystemDataAccess=False

D.IsDeterministic=FalseIsSystemVerified=TrueIsPrecise=TrueSystemDataAccess=False

答案:

A

第9题

你要使用MicrosoftSQLServer2008开发一个数据库。

该数据库包含图中所示的表。

你需要实现,如果零件属于套件,那么应防止删除这些零件。

如果零件属于套件,那么不应发生删除操作,并且该行的IsDeleted列不应更改为“True”。

如果零件不属于套件,那么可以删除零件。

下面的Transact-SQL语句将在触发器中使用:

UPDATEpSETIsDeleted=1FROMKitPartkpJOINdeleteddONkp.PartID=d.PartIDJOINPartpONkp.PartID=p.PartID;DELETEFROMpFROMPartpJOINdeleteddONp.PartID=d.PartIDLEFTOUTERJOINKitPartkpONp.PartID=kp.PartIDWHEREkp.KitIDISNULL;

你需要在触发器中实现该Transact-SQL语句。

应使用哪个触发器语法?

图示:

A.CREATETRIGGERtr_Part_dONPartAFTERDELETEASBEGINEND

B.CREATETRIGGERtr_Part_dONPartINSTEADOFDELETEASBEGINEND

C.CREATETRIGGERtr_KitPart_dONKitPartAFTERDELETEASBEGINEND

D.CREATETRIGGERtr_KitPart_dONKitPartINSTEADOFDELETEASBEGINEND

答案:

B

第10题

你有名为Products和OrderDetails的表。

Products表与OrderDetails表有基于ProductID列的外键关系。

你有下面的Transact-SQL批处理:

BEGINTRY

BEGINTRANSACTIONDELETEFROMProductsWHEREProductID=5;BEGINTRANSACTION

INSERTINTOOrderDetails(OrderID,ProductID,Quantity)VALUES(1234,5,12);COMMITTRANSACTION

COMMITTRANSACTIONENDTRYBEGINCATCHROLLBACKTRANSACTIONPRINTERROR_MESSAGE();ENDCATCH

你需要分析执行此批处理的结果。

预期的结果应该是什么?

A.–将从Products表删除产品。

--订单详细信息将插入OrderDetails表。

B.–将从Products表删除产品。

--订单详细信息不会插入OrderDetails表。

C.–不会从Products表删除产品。

--订单详细信息将插入OrderDetails表。

D.–不会从Products表删除产品。

--订单详细信息不会插入OrderDetails表。

答案:

D

第11题

你有一个名为Orders的表。

你的任务是修改公司主数据库,以删除所有无效的订单行。

你正要开发一个存储过程用来删除这些行。

你编写了下面的代码片段来完成此任务。

(包含的行号仅供参考。

01

020304

BEGINTRY

DECLARE@RowCountINT=1000WHILE@RowCount=1000BEGIN

050607

DELETETOP(1000)FROMOrdersWHEREStatus='Inactive';SET@RowCount=@@ROWCOUNT...

08

END

09

ENDTRY

10

BEGINCATCH

11PRINTERROR_MESSAGE()

12ENDCATCH

你需要插入一条Transact-SQL语句,该语句在每批行删除之后立即通知你。

应在第07行插入哪句Transact-SQL语句?

A.RAISERROR('Deleted%irows',6,1,@RowCount)

B.RAISERROR('Deleted%irows',16,1,@RowCount)

C.RAISERROR('Deleted%irows',10,1,@RowCount)WITHNOWAIT

D.RAISERROR('Deleted%irows',11,1,@RowCount)WITHNOWAIT

答案:

C

第12题

你在编写一个批处理,其中包含修改现有产品的多条UPDATE语句。

你将这些更新放在一个显式事务中。

你需要在事务开始时设置一个选项,如果事务中的任何更新失败,该选项将回滚所有更改。

应启用哪个选项?

A.ARITHABORT

B.XACT_ABORT

C.IMPLICIT_TRANSACTIONS

D.REMOTE_PROC_TRANSACTIONS

答案:

B

第13题

你有名为Sales.SalesOrderHeader和Person.Person的表。

你的任务是编写一个查询来返回OrderDate大于20040101的SalesOrderID和SalesPersonName。

SalesPersonName应是将Person.Person表中的FirstName列和LastName列合并而成。

你需要编写查询来按字母表顺序返回FirstName和LastName合并的数据。

应使用哪一条Transact-SQL语句?

A.SELECTSalesOrderID,FirstName+''+LastNameasSalesPersonNameFROMSales.SalesOrderHeaderHJOINPerson.PersonPonBusinessEntityID=H.SalesPersonIDWHEREOrderDate>'20040101'ORDERBYFirstNameASC,LastNameASC

B.SELECTSalesOrderID,FirstName+''+LastNameasSalesPersonNameFROMSales.SalesOrderHeaderHJOINPerson.PersonPonBusinessEntityID=H.SalesPersonIDWHEREOrderDate>'20040101'ORDERBYFirstNameDESC,LastNameDESC

C.SELECTSalesOrderID,FirstName+''+LastNameasSalesPersonNameFROMSales.SalesOrderHeaderHJOINPerson.PersonPonBusinessEntityID=H.SalesPersonIDWHEREOrderDate>'20040101'ORDERBYSalesPersonNameASC

D.SELECTSalesOrderID,FirstName+''+LastNameasSalesPersonNameFROMSales.SalesOrderHeaderHJOINPerson.PersonPonBusinessEntityID=H.SalesPersonIDWHEREOrderDate>'20040101'ORDERBYSalesPersonNameDESC

答案:

C

第14题

你有一个名为Sales.PotentialClients的表。

此表有名为EmailAddress的列。

你的任务是开发一个报表,报表从Sales.PotentialClients中返回有效的“.com”电子邮件地址。

有效电子邮件地址在@符号前面至少有一个字符,在@符号后面和“.com”之前至少有一个字符。

你需要编写一条Transact-SQL语句来返回符合该业务要求的数据。

应使用哪一条Transact-SQL语句?

A.select*fromSales.PotentialClientswhereEmailAddresslike'_%@_%.com'

B.select*fromSales.PotentialClientswhereEmailAddresslike'%@%.com'

C.select*fromSales.PotentialClientswhereEmailAddresslike'_%@_.com'

D.select*fromSales.PotentialClientswhereEmailAddresslike'%@%[.]com'

答案:

A

第15题

你有一个名为Orders的表。

OrderID定义为IDENTITY(1,1)。

OrderDate默认值为1。

你需要编写查询将新订单插入Orders表,该订单的CustomerID为45,日期是今天,成本为89.00。

应使用哪条语句?

图示:

A.INSERTINTOOrders(CustomerId,OrderDate,Cost)VALUES(45,DEFAULT,89.00);

B.INSERTINTOOrders(OrderID,CustomerId,OrderDate,Cost)VALUES(1,45,DEFAULT,89.00);

C.INSERTINTOOrders(CustomerId,OrderDate,Cost)VALUES(45,CURRENT_TIMESTAMP,89.00);

D.INSERTINTOOrders(OrderID,CustomerId,OrderDate,Cost)VALUES(1,45,CURRENT_TIMESTAMP,89.00);

答案:

C

第16题

你有下面两个表。

这两个表之间的外键关系启用了CASCADEDELETE。

你需要从Orders表删除所有记录。

应使用哪一条Transact-SQL语句?

图示:

A.DROPTABLEOrders

B.DELETEFROMOrders

C.TRUNCATETABLEOrders

D.DELETEFROMOrderDetails

答案:

B

第17题

你的任务是从名为NewWidgets的表删除1000行。

有2000行的ToBeDeleted列设置为1。

你需要编写一个Transact-SQL批处理来准确删除1000行。

应使用哪个Transact-SQL批处理?

A.DELETETOP(1000)dbo.NewWidgetsWHEREToBeDeleted=1;

B.DECLARE@BatchSizeINT=10;

WHILE(@BatchSize=10)DELETETOP(@BatchSize)dbo.NewWidgetsWHEREToBeDeleted=1;

C.DELETETOP((SELECTCOUNT(*)FROMdbo.NewWidgetsWHEREToBeDeleted=1))wFROMdbo.NewWidgetswWHEREw.ToBeDeleted=1;

D.DECLARE@TotalRowCountINT=0;

WHILE(@TotalRowCount<=1000)BEGINDELETETOP(10)dbo.NewWidgetsWHEREToBeDeleted=1;

SET@TotalRowCount+=@@ROWCOUNT;

END

答案:

A

第18题

你有两个表dbo.Products和dbo.PriceChange。

dbo.Products表包含10种产品。

五种产品的单价为$20,PriceIncrease(价格增量)设置为1。

其他五种产品的单价为$10,PriceIncrease(价格增量)设置为0。

你有下面的查询:

INSERTdbo.PriceChange(ProductID,Change,ChangeDate)SELECTProductID,inPrice-delPrice,SYSDATETIME()FROM(UPDATEdbo.ProductsSETPrice*=1.1OUTPUTinserted.ProductID,inserted.Price,deleted.PriceWHEREPriceIncrease=1)p(ProductID,inPrice,delPrice);

你需要预测查询结果。

该查询应生成什么结果?

A.dbo.Products中五行更新。

五行插入dbo.PriceChange。

B.dbo.Products中五行更新。

没有行插入dbo.PriceChange。

C.dbo.Products中无行更新。

五行插入dbo.PriceChange。

D.dbo.Products中无行更新。

没有行插入dbo.PriceChange。

答案:

A

第19题

你有下面两个表。

Products

ProductID

ProductName

VendorID

1

Product1

0

2

Product2

1

3

Product3

1

4

Product4

0

ProductChanges

ProductID

ProductName

VendorID

1

Product1

1

2

Product2

1

3

NewProduct3

2

5

Product5

1

你执行了下面的语句。

MERGEProductsUSINGProductChangesON(Products.ProductID=ProductChanges.ProductID)WHENMATCHEDANDProducts.VendorID=0THENDELETEWHENMATCHEDTHENUPDATESETProducts.ProductName=

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

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2