数据库复习题.doc_第1页
数据库复习题.doc_第2页
数据库复习题.doc_第3页
数据库复习题.doc_第4页
数据库复习题.doc_第5页
已阅读5页,还剩191页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1你是一数据公司的数据库开发者,你创建了一个用来存储15个不同高校运动会统计表的数据库。这些信息将被用在50家公司的网页设置上。每个公司的WEB设置以不同的格式来安排和显示这些统计表。你需要组装这些数据传送到这些公司去,你应该做什么?A.用包含FOR XML子句的SELECT语句来提取数据。B.使用sp_makewebtask系统存储过程,用select 语句从数据的返回中产生HTML。C.创建数据转换服务包从数据库中输出数据并且将数据放在带有分隔标记的文本文件中。D.使用SQL_DMO来创建一个应用程序把数据从数据库中取出并转换它.答案: A.2你是一邮件订购公司的数据库开发者,该公司有两台名为CORP1和CORP2 的SQLServer2005/2008的计算机。CORP1是台在线处理事务的服务器。CORP2存放销售的历史数据。CORP2已经添加了一个连接服务器到CORP1上。销售部经理请你创建一个是谁购买软盘的用户清单。这清单每个月生成一次,软盘在数据库中用ID21来表示。你必须从一张名为SalesHistory的表中检索数据。该表放在本地的CORP2档案数据库中。你需要在CORP1上执行这个请求。你该选择哪个选项?A.EXEC sp_addlinkedserver CORP2, SQL ServerGOSELECT CustomerID FROM CORP2.Archive.dbo.SalesHistoryWHERE CategoryID = 21B.SELECT CustomerID FROM OPENROWSET (SQLOLEDB, CORP2; p*word, SELECTCustomerID FROM Archive.dbo.SalesHistory WHERE CategoryID = 21)C.SELECT CustomerID FROM CORP2.Archive.dbo.SalesHistoryWHERE CategoryID = 21D.EXEC sp_addserver CORP2GOSELECT CustomerID FROM CORP2.Archive.dbo.SalesHistoryWHERE CategoryID = 21答案: C.3你是一名Trey Research的数据库开发者,你创建两个事务来帮助将雇员的数据信息写入公司的数据库中。一个事物将雇员的姓名和地址插入数据库中,这个事务很重要,另外一个事务将雇员的人数统计插入到数据库中。这个事务不那么重要。在数据库使用的高峰期,在服务器有时遇到错误的期间管理员会通知。每次发生时,数据库服务器会随机地终止其中一个事务。你必须确定当服务器终止其中一个事务时,它不会终止比较重要的那个事务。你应该做什么?A.为插入雇员姓名和地址信息的那个事务设置 DEADLOCK_PRIORITY to LOW 选项B.为插入雇员人数信息的那个事务设置 DEADLOCK_PRIORITY to LOW 选项C.为插入雇员姓名和地址信息的那个事务添加一个检查1205服务器错误的条件代码。如果这个错误被遇到,重新启动该事务。D.在事务中添加一个ROWLOCK优化提示给SQL数据操作语句。E.为插入雇员姓名和地址信息的那个事务设置隔离级别给 SERIALIZABLE.答案: B.4你是公司的SQL Server 2005/2008在线事务处理数据库的开发者.很多表中有一千甚至更多行。所有的表都有一聚集索引。大量地访问表至少要有一个非聚集索引。在数据库服务器上数据文件将包含有2个RAID阵列。你想要排列这些表和索引以确保最佳的输入/输出性能。你在每个RAID阵列上创建一个文件组,你接下来应该做什么?A.把经常连接在一起的表放在同一个文件组中。把大量访问的表和属于这些表的所有索引放在不同的文件组中。B.把经常连接在一起的表放在同一个文件组中。把大量访问的表和属于这些表的非聚集索引放在同一个文件组中。C.把经常连接在一起的表放在不同的文件组中。把大量访问的表和属于这些表的非聚集索引放在不同的文件组中。D.把经常连接在一起的表放在不同的文件组中。把大量访问的表和属于这些表的非聚集索引放在同一个文件组中。答案: C5你是你公司SQL Server 2005/2008 数据库的开发者。你在数据库中更新一些为销售部门创建新的月底报表的存储过程。这存储过程包括从三个或更多的表中检索数据的复杂请求。在数据库中所有的表至少有一个索引。用户报告说有一个新的月底报表的运行比以前版本的报表的运行来的慢。你想要提高这些报表的性能,你应该做什么?A.为每个存储过程创建一个包含数据定义语言的脚本。为索引调整向导使用这个脚本作为工作负荷记录文件B.在SQL跟踪事件探查器捕获每一个存储的执行过程。为索引调整向导使用跟踪文件作为工作 负荷记录文件C.在使用存储过程的表中更新统计表D.在查询分析器中执行每一个存储过程,并使用Show Execution Plan选项E.在查询分析器中执行每一个存储过程,并使用Show Server Trace选项答案: E6你是一个wide world importers公司的数据库开发人员,你创建了用来存储订单的数据库。订单将被输入客户/服务器应用程序中。每次有一个新订单被输入,并被赋予一个唯一的编号,按升序排列。每天平均有10000个订单被输入。你创建一个名为Orders的新表并在其中添加一个OrderNumber字段。接下来你应该做什么?A. 为该字段设置全局唯一标识符的数据类型。B. 为该字段设置int数据类型,并为该字段设置一致性的属性。C. 为该字段设置int数据类型。在表中创建一个用户自定义函数用于查看订单编号的最大值。D. 为该字段设置int数据类型。创建一个名为NextKey的表,并在其中添加NextOrder字段。将该字段的数据类型设置为int。在NextKey表中创建一个存储过程用于检索更新value held。答案: B.7你是一个技术培训中心数据库开发者。通常地,用书面管理雇员的学历、教师、课程和教室安排。这个培训中心希望通过开发一个数据库录入信息来实现无纸化记录。你为这个数据库设计表,设计如图你想缩短查询的响应时间和将数据冗余最小化。你应该做什么?A创建一个名为Instructors的新表。包含InstructorID、InstructorName、 OfficePhone等字段,为添加一个Courses表添加一个名为InstructorID的字段。B将Classroom中的所有字段复制到Courses,并删除Classroom表。C移除Courses表的主键约束用一个基于CourseID和CourseTitle的主键约束来代替。D移除ClassroomID字段,并在ClassroomNumber和ClassTime字段上以主键约束做基础。答案: A.8你设计了一个包含客户订单的数据库。客户每次下订单时都将订购成倍的产品。你再观察如图所示的数据库设计:你想缩短查询的响应时间和将数据冗余最小化。你应该怎么做?A创建一个新的名为OrderDetail 的订货表,为该表添加OrderID、 ProductID、 Quantity字段。B在Orders表的OrderID 、 ProductID字段上创建一个混合的主键约束C从Orders表中除去 ProductID、 Quantity 这两个字段. D在Orders表的OrderID上创建一个唯一约束.E将UnitPrice 这个字段从Products表移动到Orders表.答案: A, C.9您是一出版社公司的数据库开发者。你创建以下存储过程来为特殊的书名报道每年每日的销售情况CREATE PROCEDURE get_sales_for_title%title varchar(80), ytd_sales int OUTPUTASSELECT ytd_sales = ytd_salesFROM titlesWHERE title = titleIF ROWCOUNT = 0RETURN(-1)ELSERETURN(0)您创建一个脚本来执行这个存储过程。如果该存储过程成功执行,它应报道每年每日书的销售情况。如果失败,则将返回如下信息:“No Sales Found”您该怎样创建该脚本?A. DECLARE retval intDECLARE ytd intEXEC get_sales_for_title Net Etiquette, ytdIF retval 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GOB. DECLARE retval intDECLARE ytd intEXEC get_sales_for_title Net Etiquette, ytd OUTPUTIF retval 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GOC. DECLARE retval intDECLARE ytd intEXEC get_sales_for_title Net Etiquette,retval OUTPUTIF retval 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GOD. DECLARE retval intDECLARE ytd intEXEC retval = get_sales_for_title Net Etiquette, ytd OUTPUTIF retval 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GO答案:D10您是一集装箱制造公司的数据库开发者。您的公司生产的集装箱是一些不同型号的。存储集装箱信息的表如下所示有Size、Container和Shape表。数据存储在表中的示例如图所示在表中数据存储的实例如图中资料所示,集装箱的大小定期地改变。数据库用户经常需要一集装箱的体积。集装箱的体积是根据shape和size表中的信息计算的。您要隐藏计算的详细结果,以便the volume can be easily accessed in a SELECT query with the rest of the container information。你应该做什么?A.创建一个以ContainerID 为根据并且能够清空集装箱的体积的用户自定义函数。B.创建一个以ContainerID 为根据并且能够清空集装箱的体积的存储过程.C.为Container 表添加一个名为volume 的字段。创建一个触发器来计算和存储体积当有一个新的集装箱插入表中的时候.D.给Container表添加一个计算列来计算集装箱的体积。答案: A.11你是一医院数据库的开发者.医院一共有26层,每一层提供了4个房间。你设计一个控制物品清单的数据库。某些使用方便的列须每次都存储。当使用某一个列时,键用来减少计算数据库里的物品清单。供应管理者应在可用空间少于列的最小值时翻页。你该怎么做?A.创建一个用来更新inventory表的存储过程。如果结果小于重新储存量,使用xp_logevent存储过程来翻页。B.在inventory表上创建一个INSTEAD OF UPDATE触发器。如果inserted表中的数量小于重新储存量,使用SQLAgentMail来发送e-mail信息给翻页者C.在inventory表上创建一个FOR UPDATE触发器. 如果inserted表中的数量小于重新储存量,使用xp_sendmail系统存储过程来翻页。D.设置SQL server作业每隔4小时运行一次, 配置该作业使用the notify_level_page = 2 argument.配置该作业让它测试列的大小它将触发供应者翻页。答案: C.12您是一数据库的开发者,该数据库用来报告时间。通常平均每次有5个用户同时访问该数据库,且查询响应时间小于1秒钟。然而,在星期五下午和星期一早上,当大多数雇员输入他们的时间 ,该数据库使用率增加到平均每次50个用户。在这段时间内,查询响应时间增加到平均15到20秒。您要减慢响应速度的原因并解决问题。你该怎么做?A.用sp_lock和sp_who系统存储过程找出锁的资源和占用锁的进程。用这些信息来识别和 重设引起锁的事务。B.用系统表sysprocesses和sysobjects找出死锁的资源并确定访问该资源的进程。C.用系统表sysprocesses 找出哪个资源正在被访问。在所有被访问的表的主键上添加聚集索引。D.用sp_monitor系统存储过程来确认增加的查询时间影响了哪个进程。为该进程设置一个限制性较小的事务隔离级别。答案: A.13你是一保险公司的数据库开发者。该保险公司有一应用程序用来输入关于它的政策和其所有者的数据。该政策所有者信息存储在Owners表中。建该表的脚本如下所示:CREATE TABLE Owners(OwnerID int IDENTITY (1, 1) NOT NULL,FirstName char(20) NULL,LastName char(30) NULL,BirthDate date NULL,CONSTRAINT PK_Owners PRIMARY KEY (Owner ID)当输入所有者的信息,所有者的出生日期不存在,该数据库需 产生一定的错误信息项目,该信息可通过数据登记程序来显示。您需要为该数据库设计一个方法来确认出生日期已提供,如果没有则产生错误信息。你该怎么做?A.在BirthdayDate列中添加CHECK约束。B.创建一个规则,并将其绑定到BirthdayDate列中。C.修改Owners表,不允许BirthDate列为空。D.在Owners中创建一个触发器来确认BirthDate列。答案: D.14你是一家大型brewery的数据库开发人员 。每一家工厂和设备的信息存储在一个名为Equipment的数据库中. 这工厂的信息存放在一张名为Location的表中,设备的信息存放在一张名为Parts的表中。用来创建这些表所使用的脚本如下所示:CREATE TABLE Location(LocationID int NOT NULL,LocationName char (30) NOT NULL UNIQUE,CONSTRAINT PK_Location PRIMARY KEY (LocationID)CREATE TABLE Parts(PartID int NOT NULL,LocationID int NOT NULL,PartName char (30) NOT NULL,CONSTRAINT PK_Parts PRIMARY KEY (PartID),CONSTRAINT FK_PartsLocation FOREIGN KEY (Location ID)REFERENCES Location (LocationID)The brewery用来关闭一些现有的工厂和打开一些新的工厂。当一家工厂被关闭时,有关工厂和所有设备的信息将从数据库中删除。你创建一个存储过程来完成这个操作。名为sp_DeleteLocation 存储过程如下所示:CREATE PROCEDURE sp_DeleteLocation LocName char(30) ASBEGINDECLARE PartID intDECLARE crs_Parts CURSOR FORSELECT p.PartIDFROM Parts AS p INNER JOIN Location AS 1ON p.LocationID = LocNameWHERE l.LocationName = LocNameOPEN crs_PartsFETCH NEXT FROM crs_Parts INTO PartIDWHILE (FETCH_STATUS -1)BEGINDELETE Parts WHERE CURRENT OF crs_PartsFETCH NEXT FROM crs_Parts INTO PartIDENDCLOSE crs_PartsDEALLOCATE crs_PartsDELETE Location WHERE LocationName = LocNameEND这个存储过程将要花费比想像中还要长的时间来执行。 你需要减少这个存储过程的执行时间,你该怎么做?A. 在定义过程中 添加 WITH RECOMPILE 选项 .B. 用单一的DELETE 语句取代光标操作C. 在过程的开头添加一个 BEGIN TRAN 语句并在过程的结尾添加 COMMIT TRAN 语句 D. 为这个过程设置事务处理隔离级别 READ UNCOMMITTED E. 为 Parts 表的 PartID 字段添加一个非聚集索引.答案: B.15你是一家保险公司的数据库开发人员。关于公司保险单的信息存储在 SQL Server 2005/2008 数据库中。你使用了以下脚本为数据库创建了一张名为 Policy 的表。 CREATE TABLE Policy(PolicyNumber int NOT NULL DEFAULT (0),InsuredLastName char (30) NOT NULL,InsuredFirstName char (20) NOT NULL,InsuredBirthDate datetime NOT NULL,PolicyDate datetime NOT NULL,FaceAmount money NOT NULL,CONSTRAINT PK_Policy PRIMARY KEY (PolicyNumber)每次公司卖出一条新的保险单,保险单必须被指定一个保险单号码。当一条新的保险单信息被输入时数据库必须指定一个新的保险单号码。你应该做什么?A. 创建一个 INSTEAD OF INSERT 触发器来产生一个新的保险单号码并且包括把它插入表中。B. 创建一个 INSTEAD OF UPDATE 触发器来产生一个新的保险单号码并且包括把它插入表中。C. 创建一个 AFTER UPDATE 触发器来产生一个新的保险单号码并且包括把它插入表中。D. 用AFTER INSERT 触发器来取代DEFAULT约束并产生一个新的保险单号码并且包括把它插入表中。答案: A16你是一家通讯公司的数据库开发队的一个成员。 在队上的另外一个开发者 , Marc,在一个名为Corporate的数据库中创建了一张名为Customers 的表。因为表包含机密的信息, 他已经授权允许查询该表的只有队里的其他成员。你正在开发一个应用程序用来允许销售部门的职员查看Customers表的一些信息。 这些职员是销售数据库角色的所有成员。 为了支持这一个应用程序,你在Customers表上创建一个被命名的 vwCustomers 的视图。 在创建视图之后,你授权具有销售角色的成员允许查询。当销售角色的成员尝试从视图中取回数据的时候,他们接收以下错误信息: SELECT permission denied on object Customers, database Corporate, ownerMarc.你必须确定具有销售角色的成员只能使用 vwCustomers 视图来访问 Customers 表的数据。 你应该做什么?A. 添加一个销售角色到固定的系统管理员服务器角色中。B. 将 vwCustomers 视图的所有权转移到销售角色中。C. 通知Marc将Customers表的所有权转移给销售角色的每个成员。D. 通知Marc授予用户查询Customers表的许可。E. 删除 vwCustomers 视图。 通知Marc重建视图并且授予销售角色的用户查询视图的权限。答案: E.17你正在为你的公司设计一个SQL Server 2005/2008销售数据库,它能够被客户端的应用程序访问。客服人员和销售人员对数据库中的所有表格应具有插入,删除和查询的权限。另外,使用客户端程序时候,销售人员将由会把数据库中的表通过Excel导出成图解。客服人员属于Windows 2000中的名字叫CSR的组。销售人员属于Windows 2000中的名字叫Marketing的组。你只允许客服人员通过客户端应用程序访问数据库。你却允许销售人员通过客户端应用程序和Excel访问数据库。在数据库中没有授予任何许可权。你该怎么做呢?C. 为客户应用程序创建一个应用程序角色,授予 这个应用程序角色SELECT, INSERT and UPDATE 权限 。为marketing 雇员创建一个叫Marketing 的数据库角色。添加Windows 2000 Marketing 组到Marketing数据库角色。授予数据库中的所有表有查询Marketing 数据库角色的权限。答案: C.18你是一个在线书店零售商的数据库开发者。客户通过公司的网站订购书。一旦顾客填写了订单,订单的信息将存入一个名为 BookOrders 的数据库内。经过批处理后,订单信息将被转化到一个名叫Reports数据库内。这个数据库含有两个表,一个叫Order,另一个叫LineItem。Order表包括了订单的一些基本信息。LineItem表则包含了订单中一些涉及私人的信息。Order 和LineItem表是将要被给出的。为了使顾客能够通过公司的网站察看而且只能察看自己的订单信息。顾客不能够修改提交过的订单信息。订单的主键和顾客是不相关的,而且是不可见。你应该怎么做呢?A.创建一个视图显示 ORDER 表的客户信息B.创建一个存储过程检索 ORDER 表的客户信息C.创建一个 scalar user-defined function 来检索ORDER的客户信息 D.授予客户对 Order 表和 LineItem 表的查询权限答案: B.19你是一家大型旅行公司的数据库开发者。关于公司每个部门的信息都被储存在一个名叫Department的表中。关于公司的每个旅行社代理商和部门经理的信息被储存在一张Employeest的表中。Department和Employees表将被给出。每个部门经理将被授予数据库管理者的角色。你需要使得这个数据库角色的所有成员能够看到department表中的所有数据。这个角色的成员只能对department数据库的行进行插入和更新操作。你已经授予了这个数据库管理角色选择的权限,接下来你要做什么?A在Department表上创建一个触发器,来登记部门成员数据库登陆用户实行插入或更新操作是否属于这个部门成员B创建一个视图包括Department表的所有列和Employees表的SQLLogin列C在视图定义中包含 WITH CHECK OPTION项。D授予Department表的插入和更新权限.E授予Employees表的SQLLogin列插入和更新权限.答案: B.20你是你们公司销售数据库的开发者。这个数据库有个名字叫Order的表。创建表的脚本如下:CREATE TABLE Orders(OrderID int NOT NULL,CustomerID char (5) NOT NULL,OrderDate datetime DEFAULT GETDATE ( ) NULL,ShippedDate datetime NULL,Freight money NULL,ShipName varchar (40) NULL)GOCREATE CLUSTERED INDEX IX_OrderID ON Orders (OrderID)GOCREATE NONCLUSTERED INDEX IX_CustomerID ON Orders (CustomerID)应用程序将为顾客执行下面的查询语句:SELECT OrderID, CustomerID, OrderDateFROM Orders WHERE CustomerID = WHITCORDER BY OrderDate DESC产生的查询实行计划如查询实行计划展览品中所示。查询实行计划:为了使这个查询语句效率高点。你应该作什么?A.在 OrderDate上创建非群集索引B.在OrderDate上创建一个群集索引.C.把 OrderID 上的群集索引换成非群集索引D.把OrderDate添加到CustomerID的非群集索引中答案: D.21你正在为你的公司设计一个SQL Server 2005/2008销售数据库,你们公司有很多基于网络的应用程序,它们要从销售数据库提取数据。其中的一些应用程序通过EXECUTE语句来进行相应的查询操作。随着使用网络型应用程序的增加。查询将需要更长的时间来执行。如果你要开发一个能够执行大量查询语句的网络应用程序。你要做什么?A. 用SQL profiler去捕获RPC:Completed 事件,通过 HostName 数据列分类跟踪B. 用SQL profiler去捕获SQL:StmtCompleted 事件.通过ApplicationName数据列分类跟踪C. 用系统监视器监视 SQLServer:Database counter.Select all counters for the Sales databaseD. 用系统监视器监视 SQLServer:General Statistics counter.Select all counters for the Sales database.答案: B.22你是一个跨国公司的数据库开发者。公司有一个在SQL Server 2005/2008的在线交易处理的数据库。这个数据库有一个销售表,它里面包含了公司的一些固定的信息。在过去的一年,已经有150,000行数据被加到销售数据库中。数据库使用者说数据库慢慢的变得不太好用了。你为了改变数据库的查询销售表的能力,在SQL的查询分析器中要执行哪个脚本语句?A. EXEC sp_updatestats resampleB. CREATE STATISTICS Sales WITH FULLSCANC.Sp_autostats SalesD. UPDATE STATISTICS Sales WITH FULLSCAN ALL答案: A.23你是一个SQL Server 2005/2008的在线交易处理的数据库的开发者。你写了许多存储过程来产生严格的报表。这些存储过程能够访问存在的且索引的数据表。你把储存过程放在生产环境前,你要确定新储存过程有最佳的表现。你也确定数据库的每日操作没被不利的东西影响。你应该做什么?A.为包含在存储过程中的每个分析创建一个覆盖索引B.为存储过程的每个查询创建一个包含WHERE项的每个列的索引C.从索引运行向导中用输出来确认索引是否应该被添加。D.在SELECT and WHERE 项的每个分析在所有列中创建一个统计表.答案: C.24你是一个保险公司的数据库开发者。你知道如果数据库在一年前就被生成,那么要执行selects, inserts, and updates操作就需要更长的时间。前期数据库开发者在开发前加入了必要的索引。从那时起,其他的储存过程和表也被加入到数据库中。另外,许多查询都已经没用过了。你为了使数据库的相应时间尽可能加快,你要做什么?A.执行 DBCC UPDATEUSAGE 语句阻止数据库去更新sysindexes 系统表B.执行 DBCC SHOW_STATISTICS 语句找到高密度的索引。删除高密度索引C.运行索引运行向导阻止 a workload file 支持索引创建和删除被建议的索引。D.用 SQL profiler 寻找表扫描. 添加索引到被发现表扫描的表当中.答案: C.25你是一家运动商品公司的数据库开发者。 公司有一个主办公室和多个横穿美国的地方办公室。一个 56-Kbps 的架构继电器网络连接办公室。 每个办公室有一个包含公司的产品资讯的 SQL Server 2005/2008 数据库。主办公室的SQL Server 数据库用来处理对地方办公室数据库的逐渐增加的更新。用事务响应来运行这些更新。在每四分之一处,你创建一个新的快照文件。 你使用这个快照文件来代替地方的办公室和最近的产品信息的数据库。 这个快照文件现在超过800MB。你将快照文件应用到地方的办公室的数据库中。你想要使用最少量的费用来完成这项任务。你应该怎么做?A. 使用事务复制。为重新初始化做特定的标记 。B.拷贝快照到压缩共享的 NTFS 卷中。从共享的NTFS上创建一个CD。分配该CD到地方办公室。C.在分配器上的默认快照文件夹中创建一个压缩的快照。从那个文件夹中创建CD。把CD分配到该地方的办公室。D.在网络上的一个其它可能的快照文件夹中创建一个压缩的快照。从那个文件夹中创建光盘。分配该光盘到地方的办公室。E.在网络上的一个其它可能的快照文件夹中创建一个压缩的快照。使用 FTP 将快照分配到地方办公室。答案:D26你是你公司的 SQL Server 2005/2008 的数据库开发者.这一个数据库包含一命为Sales的表, 该表有二百万个列。 Sales表包含了公司所有部门的售卖信息。每个部门被标识于表的 DepartmentID 列中。大多数的访问反对用来为一个单一部门查找销售的表。你要提高这些访问的I/O性能。 然而, 你不想影响访问表的应用程序。你应该怎么做?A创建一个新的表,并且移动被最时常访问到的这个表的列。在两个表中保存DepartmentID列。在源表和新的表上创建一个视图。在新的表联结列上加入的一个外键约束。B创建一个新的表,并且移动被最时常访问到的这个表的列。在两个表中保存DepartmentID 列.在源表和新的表上创建一个视图。在两个表的 DepartmentID 列上加入一个CHECK约束。C为每个部门创建一个新的表, 而且为每个部门将售卖信息移动到那部门的表中。在新表的 DepartmentID 列上加入的一个CHECK约束。在新表上创建一个视图。D为每个部门创建一个新的表, 而且为每个部门将售卖信息移动到那部门的表中。在新表上创建一个视图。在视图的DepartmentID列上加入一个CHECK约束。E为部门创建一个接受一个输入叁数的存储过程。使用该存储过程返回来自Sales表的结果。答案:C27你是你公司SQL SERVER 2005/2008数据库的数据库开发者。你正在删除数据库不会再使用的对象。你无法删除视图1997Sales。经过调查你发现该视图有如下特性:(1) 该视图有一聚集索引(2) sales数据库角色有该视图的权限(3)该视图有WITH SCHEMABINDING 选项(4)该视图有一个在线参考模式(5)该视图上定义了一个INSTEAD OF触发器在删除该视图前你该做什么?A.删除该视图上的聚集索引B.除去该视图上所有权限C.除去该视图上的WITH SCHEMABINDING 选项D.除去参考该视图的函数上的WITH SCHEMABINDING 选项E.禁用该视图上的INSTEAD OF 触发器答案:D28你是proseware inc 的数据库开发者。你为公司创建一个名为humanresources的数据库。这个数据库包含所有雇员的记录和人口统计数据。这家公司有2,000个雇员和有经验的以每年2%的回转率。当他们离开公司是,他们所有的记录必须保存为auditing处理。雇员的人口统计数据以每年9%的改变率变化。你没必要维持人口统计的数据改变的历史。HumanResources的表格显示如下,和用于创建索引的脚本也显示如下:HumanResources Schema: ALTER TABLE dbo.Employee WITH NOCHECK ADDCONSTRAINT pk_Employee PRIMARY KEY CLUSTERED(EmployeeID)WITH FILLFACTOR = 90GOALTER TABLE dbo.EmployeeDemographics WITH NOCHECK ADDCONSTRAINT dbo.EmployeeDemographics PRIMARY KEY CLUSTERED(EmployeeID)WITH FILLFACTOR = 90GO你需要保证磁盘有空间和数据文件空间减到最小。所有的varchar列是50%的全部。在创建数据库中你需要定义哪两个参数?(选2)A. SIZE = 1GBB. SIZE = 1MBC. SIZE= 2048KBD. FILEGROWTH = 20E. FILEGROWTH = 5%F.FILEGROWTH = 0答案:C ,E29你是公司sql server 2005/2008数据库的开发者。这个数据库包含一个名为products表格和一个名为companies的表格。你需要用连接服务器插入新的产品信息到products表格中。这个产品表格有个主键是companies表格的外键的约束。在products表格上定义了一个更新触发器。你需要尽可能快的导出数据。你该怎么做?A使用 alter table 语句和 on update 项目来修改 products 表格。B使用 alter table 语句和禁用触发器的所有选项来修改 products 表格 。C使用 alter table 语句和禁用触发器的所有选项来修改 companies 表格 。D使用 alter table 语句和 nocheck constraint 选项来修改 companies 表格 。E使用 alter table 语句和 nocheck constraint 选项来修改 products 表格。 答案:E30你是公司会计数据库的开发者。数据库包含一个名叫Employees的表。Tom是会计部门的一个成员。Tom的数据库用户帐户对表Employees里的列Salary和BonusPercentage的SELECT权限被拒绝,被授予对其他列的SELECT权限。Tom现在要求访问Employees表里的所有数据。你该怎么做?A废除Tom数据库用户帐户对表Employees里的列Salary和BonusPercentage的SELECT权限B添加Tom到db_datareader角色C添加Tom到db_accessadmin角色D授予Tom数据库用户帐户对表Employees里的列Salary和BonusPercentage的SELECT权限。答案:D31你是一个玩具制造厂商的数据库开发者。公司里的成员有主管,管理阶层以及职员。公司内部网络首页显示了根据客户需要修改的每个阶层的员工的信息。当有一员工登陆到公司内部网时,首页验证职工的身份然后显示其充用?的公司信息。公司信息保存在库corporate里的News表中,创建新数据库表的语句如下所示:CREATE TABLE News(NewsID int NOT NULL,NewsText varchar (8000) NOT NULL,EmployeePositionType char (15) NOT NULL,DisplayUntil datetime NOT NULL,DateAdded datetime NOT NULL DEFAULT (getdate( ),CONSTRAINT PK_News PRIMARY KEY (NewsID)企业内部网的用户需访问News表,但不能插入、更新或删除表里的数据。你基于你的职位 要将充用?信息传递到企业内部网。你该怎么做?A创建一个视图返回那些应用于特殊职位的行B创建一个存储过程返回那些应用于特殊职位的行C授予每个职位对列EmployeePositionType的SELECT权限D授予每个职位对表News的SELECT权限答案:BPhoneNumbersPhoneNumberIDAreaCodeExchangeNumberZLastNameZFirstNameStreetAddressCityStatePostalCode32你是一个生产在线电话目录的公司的数据库开发者。有个名为phonenumbers的表格展示如下。在载入100,000个name到表格,你通过下面的脚本创建索引。ALTER TABLE dbo. PhoneNumbers WITH NOCHECK ADDCONSTRAINTPK_PhoneNumbersPRIMARY KEY CLUSTERED (FirstName,LastName,) ON PRIMARYGOCREATE UNIQUE INDEXIX_PhoneNumbers ON dbo.PhoneNumbers(PhoneNumberID) ON PRIMARYGO你检验数据库的反应。你发现向下面的查询要花费长时间来运行。为生活在某一城市和last name以w开始的人返回所有的名字和电话号码。你该如何改进该查询语句。(选2)A用跟随在firstnamega列后的lastname列来更改主键的约束。B在city列上添加一个非聚集索引。C在areacode,exchange,和number列上创建非聚集索引。D删除phonenumberid列上的唯一索引。E更改主键约束,换成非聚集索引。F在查询分析器中执行更新统计扫描所有的语句。答案: A,B33你是一个保险公司的数据库发展者.你正在查询调整SQL企业管理器的性能。 在查询窗口中,你创建如下的查询语句:SELECT P.PolicyNumber, P.IssueState, AP.AgentFROM Policy AS P JOIN AgentPolicy AS APON (P.PolicyNumber = AP.PolicyNumber)WHERE IssueState = ILAND PolicyDate BETWEEN 1/1/2000 AND 3/1/2000AND FaceAmount 1000000你从查询菜单中选择“显示评估执行计划”选项并执行查询产生,查询执行计划被创造并显示在评估计划的图示中。你将要做什么?A .重写查询语句删除BETWEEN关键字B .添加一个包含HASH选项的一个连接提示到查询中 C 添加一个WITH (INDEX (0) )的表提示到Policy的表中D 更新在Policy的表中的统计表E 执行在Policy的表中DBCC DBREINDEX语句答案: D34你是一个SQL SERVER 2005/2008 的数据库的开发者。你正计划增加新的索引,删除一些索引并把其它的索引合成并覆盖。在查询之前你必须创建一个报表来展现被使用的索引之后你进行更换。你应该怎么做?A执行每一个在SQL企业管理器的查询并使用SHOWPLAN_TEXT选项B执行在SQL企业管理器一个查询,使用显示执行计划选项,并对报表输出 C 运行Index Tuning Wizard相对的工作文件。使用输出报表。D 执行DBCC SHOW_STATISTICS语句。使用输出报表。 答案: A.35你是一个医院数据库的开发者。你正在设计一个SQL SERVER 2005/2008数据库医生,这个数据库包含医生和病人的信息。这个数据库将包含一个名为Physicians和一个名为Patients的表。医生治疗多个病人。病人通常有一个主治医生和一个 辅助医生。主治医生被鉴定作为主治医生。病人的表包含不多于百万行。你想在当从表中查询数据时增加I/O性能,数据库应该被标准化以达到第三标准格式。你应该使用哪种脚本来创建表?A.CREATE TABLE Physicians(Physicians ID int NOT NULL CONSTRAINT PK_Physicians PRIMARY KEY CLUSTERED,LastName varchar(25) NOT NULL,)GOCREATE TABLE Patients(Pat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论