SQLServer2008考证中文题库(70-433)(3)

2019-09-01 22:20

A F E 最 大 的 权 限 既 可 以访 问 外 部 资 源 也 可 以 访 问 A P I 和 C O M 组 件 。

2 9 . 你 创 建 了 一 个 程 序 集 , 其 中 使 用 了 非 托 管 代 码 访 问 外 部 资 源 。 你 需 要 使 用 合 适 的 权限 来 部 署 这 个 程 序 集 , 应 该 使 用 什 么 权 限 设 置 ?

A. SAFE

B. UNSAFE

C. EXTERNAL_ACCESS

D. Default permission set

A n s w e r : B

30 你有 Products 表和 OrderDetails 表。Products 表在 ProductID 列上有与 OrderDetails 表关联的外键。你有下列 T-SQL 批处理:

BEGIN TRY

BEGIN TRANSACTION

DELETE FROM Products WHERE ProductID = 5; BEGIN TRANSACTION

INSERT INTO OrderDetails

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

COMMIT TRANSACTION COMMIT TRANSACTION END TRY

BEGIN CATCH

ROLLBACK TRANSACTION PRINT ERROR_MESSAGE(); END CATCH

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

A. 1. The product will be deleted from the Products table.

2. The order details will be inserted into the OrderDetails table.

B. 1. The product will be deleted from the Products table.

2. The order details will not be inserted into the OrderDetails table.

C. 1. The product will not be deleted from the Products table. 2. The order details will be inserted into the OrderDetails table. D. 1. The product will not be deleted from the Products table. (Products 表中数据没有被删除)

2. The order details will not be inserted into the OrderDetails table. (订单明细也不会插入到 OrderDetails表) 答案:D

3 1 . 你 使 用 T R Y … C A T C H 来 进 行 错 误 处 理 , 你 需 要 把 T R Y 中 遇 到 的 错 误 传 递 到 C A T C H 块来 进 行 处 理 , 你 应 该 使 用 哪 个 严 重 级 别 ? A . 0 B . 9 C . 1 0 D . 1 6 A n s w e r : D

注 : T R Y 块 中 遇 到 严 重 级 别 1 1 - 2 0 的 异 常 能 被 C A T C H 块 捕 获 到 , 2 0 以 上 的 错 误 为 致 命 错误 会 导 致 中 断 数 据 库 链 接 , 1 - 1 0 为 警 告 。 3 2 . 有 一 个 表 O r d e r s , 你 的 任 务 是 修 改 公 司 的 主 数 据 库 , 删 除 所 有 不 活 动 的 订 单 记 录 。 你开 发 了 一 个 存 储 过 程 来 删 除 那 些 行 , 以 下 是 你 写 的 代 码 片 段 : 01 BEGIN TRY

02 DECLARE @RowCount INT = 1000 03 WHILE @RowCount = 1000 04 BEGIN

05 DELETE TOP (1000) FROM Orders WHERE Status = 'Inactive';

第 11 页

06 SET @RowCount = @@ROWCOUNT 07 ... 08 END 09 END TRY

10 BEGIN CATCH

11 PRINT ERROR_MESSAGE() 12 END CATCH

你 需 要 插 入 一 条 T - S Q L 语 句 , 当 每 一 个 数 据 块 删 除 以 后 来 提 醒 你 。 在 第 0 7 行 你 应 该 插 入哪 个 T - S Q L 语 句 ? A. RAISERROR ('Deleted %i rows', 6, 1, @RowCount) B. RAISERROR ('Deleted %i rows', 16, 1, @RowCount)

C. RAISERROR ('Deleted %i rows', 10, 1, @RowCount) WITH NOWAIT D. RAISERROR ('Deleted %i rows', 11, 1, @RowCount) WITH NOWAIT A n s w e r : C

33 你有一个使用可重复读的隔离级别的事务处理。这个事务经常引起阻塞问题。你需要减少阻塞同时避免脏读和不可重复的读。你应使用哪个事务隔离级别?

A. SNAPSHOT B. SERIALIZABLE

C. READ COMMITTED D. READ UNCOMMITTED 答案:A

34 你要写一个批处理,包含了修改已有产品的多条 UPDATE 语句。这些更新语句放在显式事务中。你需要在这个事务前设置一个选项使得当 T-SQL 语句执行产生错误时,SQL Server 自动终止整个事务并回滚。 A. ARITHABORT B. XACT_ABORT

C. IMPLICIT_TRANSACTIONS D. REMOTE_PROC_TRANSACTIONS 答案:B

35 你有一个名为 JobCandidate 的表,任务是在 JobCandidate 表中删除一行。你需要写一事务允许数据库在不知道这条记录删除执行时间的情况下恢复到记录删除的精确点。你应使用哪个查询? A. BEGIN TRANSACTION DELETE FROM JobCandidate WHERE JobCandidateID = 10; COMMIT TRANSACTION;

B. BEGIN TRANSACTION

WITH MARK N'Deleting a Job Candidate'; DELETE FROM JobCandidate WHERE JobCandidateID = 10; COMMIT TRANSACTION

C. BEGIN TRANSACTION Delete_Candidate WITH MARK DELETE FROM JobCandidate WHERE JobCandidateID = 10;

COMMIT TRANSACTION Delete_Candidate;

D. DECLARE @CandidateName varchar(50) = 'Delete_Candidate' BEGIN TRANSACTION @CandidateName DELETE FROM JobCandidate WHERE JobCandidateID = 10;

第 12 页

COMMIT TRANSACTION @CandidateName; 答案:C

36 你有下列名为 Sales 的表。你需要按客户姓名和销售日期排序返回销售数据。为每

个客户提供最近期的销售必须首先列出。你应使用哪个查询? A. SELECT CustomerName,SalesDate FROM Sales

ORDER BY CustomerName,SalesDate;

B. SELECT CustomerName,SalesDate FROM Sales ORDER BY SalesDate DESC,CustomerName; C. SELECT CustomerName,SalesDate FROM Sales ORDER BY CustomerName,SalesDate DESC; D. SELECT CustomerName,SalesDate FROM Sales ORDER BY CustomerName DESC;

答案:C

37 你有一个名为 Sales.SalesOrderHeader 的表和一个名为 Person.Person 的

表。你的任务是写一个返回SalesOrderID 和 SalesPersonName 两列 ,并且 OrderDate 大 于 20040101 的查询。SalesPersonName 由Person.Person 表中的 FirstName 和 LastName 两列连接组成。你需要写一个 FirstName 和 LastName 两列连接按字母表顺序进行排序的查询来返回数据。

A. SELECT SalesOrderID, FirstName + ' ' + LastName as SalesPersonName FROM Sales.SalesOrderHeader H

JOIN Person.Person P on P.BusinessEntityID = H.SalesPersonID

WHERE OrderDate > '20040101' ORDER BY FirstName ASC, LastName ASC

B. SELECT SalesOrderID, FirstName + ' ' + LastName as SalesPersonName FROM Sales.SalesOrderHeader H JOIN Person.Person P On P.BusinessEntityID = H.SalesPersonID WHERE OrderDate > '20040101'

ORDER BY FirstName DESC, LastName DESC

C. SELECT SalesOrderID, FirstName +' ' + LastName as SalesPersonName FROM Sales.SalesOrderHeader H JOIN Person.Person P on

P.BusinessEntityID = H.SalesPersonID

WHERE OrderDate > '20040101' ORDER BY SalesPersonName ASC

D. SELECT SalesOrderID, FirstName + ' ' + LastName as SalesPersonName FROM Sales.SalesOrderHeader H JOIN Person.Person P on P.BusinessEntityID = H.SalesPersonID

WHERE OrderDate > '20040101' ORDER BY SalesPersonName DESC

答案:C

38 你有一个名为 Sales.PotentialClients 的表。这个表包含一个名为

EmailAddress 的列。你的任务是开发一个返回 Sales.PotentialClients 表中有效的”.com”email 地址的报表。一个有效的 email 地址必须是在@符号

前至少有一个字符,”.com”前@符号后至少有一个字符。你需要写一个返回满足企业需求数据的 T-SQL 语句。你应使用哪个 T-SQL 语句?

A. select * from Sales.PotentialClients where EmailAddress like '_%@_%.com' B. select * from Sales.PotentialClients where EmailAddress like '%@%.com' C. select * from Sales.PotentialClients where EmailAddress like '_%@_.com'

第 13 页

D. select * from Sales.PotentialClients where EmailAddress like '%@%[.]com' 答案:A

39 有一个名为 Orders 的表。OrderID 被定义为一个 IDENTITY(1,1)的标识列。OrderDate 有一个为 1 的默认值。你需要插入一条 CustomerId 45、今天的日期时间、价格 89.00 的记录到 Orders 表中。你应使用哪个语句?

A. INSERT INTO Orders(CustomerId, OrderDate, Cost) VALUES (45, DEFAULT, 89.00);

B. INSERT INTO Orders(OrderID, CustomerId, OrderDate, Cost) VALUES (1, 45, DEFAULT, 89.00);

C. INSERT INTO Orders(CustomerId, OrderDate, Cost) VALUES (45, CURRENT_TIMESTAMP, 89.00);

D. INSERT INTO Orders(OrderID, CustomerId, OrderDate, Cost) VALUES (1, 45, CURRENT_TIMESTAMP, 89.00); 答案:C

第 14 页

40 你有下列两个表。

这些表

的外键关联能级联删除。你需要删除 Orders 表中的所有记录。你应 使用哪个 T-SQL 语句?

A. DROP TABLE Orders B. DELETE FROM Orders C. TRUNCATE TABLE Orders D. DELETE FROM OrderDetails 答案:B

41 你的任务是删除名为 NewWidgets 表中的 1000 条记录。属性列 ToBeDeleted 值为 1 的记录有 2000 条。你需要写一个能精确删除 1000 条记录的 T-SQL 批处理。你应使用哪个 T-SQL 批处理?

A. DELETE TOP (1000) dbo.NewWidgets

WHERE ToBeDeleted = 1;

B. DECLARE @BatchSize INT = 10; WHILE (@BatchSize = 10)

DELETE TOP (@BatchSize) dbo.NewWidgets WHERE ToBeDeleted = 1;

C. DELETE TOP ((SELECT COUNT(*) FROM dbo.NewWidgets

WHERE ToBeDeleted = 1)) w FROM dbo.NewWidgets w WHERE w.ToBeDeleted = 1;

D. DECLARE @TotalRowCount INT = 0; WHILE (@TotalRowCount <= 1000) BEGIN

DELETE TOP (10) dbo.NewWidgets WHERE ToBeDeleted = 1;

SET @TotalRowCount += @@ROWCOUNT; END

答案:A

42 你有名为 Sales.SalesOrderDetails 和 Sales.SalesOrderHeader 的两个表。你的任务是修改一类特殊销售员销售额的折扣数。只有 SalesPersonID 为 290,Sales.SalesOrderDetail 表中所有条目的 UnitPriceDiscount为设置为.1。 A. UPDATE d SET UnitPriceDiscount = .1

FROM Sales.SalesOrderDetail d INNER JOIN

Sales.SalesOrderHeader h ON h.SalesOrderID = d.SalesOrderID WHERE h.SalesPersonID = 290;

B. UPDATE Sales.SalesOrderDetail SET UnitPriceDiscount = .1 FROM Sales.SalesOrderHeader h WHERE h.SalesPersonID = 290;

第 15 页


SQLServer2008考证中文题库(70-433)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《统计学第2版》2012年1月课程考试考前练习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: