SQL Server数据库程序设计认证试题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1SQLServer数据库程序设计认证试题1.你是一家公司的数据库开发员,你正在创建一个数据库用来存储15所中学运动会的统计信息,这些信息将被50个公司用来在他们网站上发布运动会信息。每个公司的Web站点用不同的格式排列和显示统计表。你需要把数据打包传送给这些公司,你该怎么做?(SQL对XML支持)A.用包括FORXML子句的SELECT语句来提取数据B.使用sp_makewebtask系统存储过程来产生由SELECT语句返回的数据的HTML文本C.创建数据传输服务数据包来导出数据库的数据,并把这些数据放到tab分隔的文本文件中D.创建一个应用程序,此应用程序用SQL_DMO提取数据库的数据并把这些数据转换为标准电子数据交换(EDI)文件答案:A.XML可扩展标记语言,用于在web上显示数据的语言,SELECT语句的forxml子句可以使查询返回XML格式,而不是标准的行集结果;Sp_makewebtask创建一项生成HTML文档的任务,而XML比HTML更复杂;tab分隔文件常常在一些电子制表软件中被使用,如Excel;SQL_DMO是SQL分布式管理对象的缩写,允许用支持自动化或COM的语言编写应用程序,以管理SQLServer安装的所有部分。2.你是一邮件订购公司的数据库开发者,该公司有两台名为CORP1和CORP2的SQLServer2000的计算机。CORP1是台在线处理事务的服务器。CORP2存放销售的历史数据。CORP2已经添加了一个连接服务到CORP1上。销售部经理请你创建一个是谁购买软盘的用户清单。这清单每个月生成一次,软盘在数据库中用ID21来表示。你必须从一张名为SalesHistory的表中检索数据。该表放在本地的CORP2Archive数据库中。你需要在CORP1上执行这个请求。你该选择哪个选项?(远程服务器)A.EXECsp_addlinkedserver‘CORP2',‘SQLServer’GOSELECTCustomerIDFROMCORP2.Archive.dbo.SalesHistoryWHERECategoryID=21B.SELECTCustomerIDFROMOPENROWSET(‘SQLOLEDB’,‘CORP2’;‘p*word’,‘SELECTCustomerIDFROMArchive.dbo.SalesHistoryWHERECategoryID=21’)C.SELECTCustomerIDFROMCORP2.Archive.dbo.SalesHistoryWHERECategoryID=21D.EXECsp_addserver‘CORP2’GOSELECTCustomerIDFROMCORP2.Archive.dbo.SalesHistoryWHERECategoryID=21答案:C.SELECTCustomerIDFROMSalesHistoryWHERECategoryID=21,由于表SalesHistory是在远程的CORP2服务器上,并且也已经建立了连接,所以可以直接使用分布式查询。sp_linkedserver是建立与服务器的连接;OPENROWSET是一种使用OLEDB连接并访问远程数据的一次性的、特殊的方法,无需设置链接服务器;sp_addserver定义本地或远程服务器的名称3.你是一名TreyResearch的数据库开发者,你创建两个事务来帮助将雇员的数据信息写入公司的数据库中。一个事物将雇员的姓名和地址插入数据库中,这个事务很重要,另外一个事务将雇员的人数统计插入到数据库中,这个事务不那么重要。在数据库使用的高峰期,在服务器有时遇到错误的期间管理员会通知。每次发生时,数据库服务器会随机地终止其中一个事务。你必须确定当服务器终止其中一个事务时,它不会终止比较重要的那个事务。你应该做什么?(事务处理)A.为插入雇员姓名和地址信息的那个事务设置DEADLOCK_PRIORITYtoLOW选项2B.为插入雇员人数信息的那个事务设置DEADLOCK_PRIORITYtoLOW选项C.为插入雇员姓名和地址信息的那个事务添加一个检查1205服务器错误的条件代码。如果这个错误被遇到,重新启动该事务。D.在事务中添加一个ROWLOCK优化提示给SQL数据操作语句。E.为插入雇员姓名和地址信息的那个事务设置隔离级别给SERIALIZABLE.答案:B.Setdeadlock_prioritytolow可以指定当前事务为首选死锁牺牲品;错误号1205是事务成为死锁牺牲事务被中止后返回的信息,为插入雇员姓名和地址信息的那个事务添加条件代码,比较没有效率4.你是公司的SQLServer2000在线事务处理数据库的开发者.很多表中有一千甚至更多行。所有的表都有一聚集索引。大量地访问表至少要有一个非聚集索引。在数据库服务器上数据文件将包含有2个RAID阵列。你想要排列这些表和索引以确保最佳的输入/输出性能。你在每个RAID阵列上创建一个文件组,你接下来应该做什么?(文件组管理)A.把经常连接在一起的表放在同一个文件组中。把大量访问的表和属于这些表的所有索引放在不同的文件组中。B.把经常连接在一起的表放在同一个文件组中。把大量访问的表和属于这些表的非聚集索引放在同一个文件组中。C.把经常连接在一起的表放在不同的文件组中。把大量访问的表和属于这些表的非聚集索引放在不同的文件组中。D.把经常连接在一起的表放在不同的文件组中。把大量访问的表和属于这些表的非聚集索引放在同一个文件组中。答案:C为了提高查询效率,将经常查询的表放不同的文件组中,而且将非聚集索引和它的表也放入不同的文件组中。5.你是公司SQLServer2000数据库的开发者。你更新了数据库里几个存储过程来创建新的月终销售部门的报表。此存储过程包括综合查询从三个或者更多的数据表中检索数据。所有数据库中的表至少有一个索引。用户反映新的月终报表比前一个版本的报表运行速度慢很多。你想改善报表的性能。你该怎么做?A.创建一个脚本,包括每个存储过程中的数据定义语言(DataDefinitionLanguage),使用这个脚本作为索引优化向导(IndexTuningWizard)的工作量文件B.在SQL部署跟踪器中捕获每个存储过程的执行,使用跟踪文件作为索引优化向导(IndexTuningWizard)的工作量文件C.更新存储过程使用的数据表统计索引D.在SQL查询分析器中执行每个存储过程,并使用ShowExecutionPlan选项E.在SQL查询分析器中执行每个存储过程,并使用ShowServerTrace选项正确答案:E显示服务器跟踪命令提供了对信息的访问,此信息用于确定查询对服务器方的影响。如果显示服务器跟踪命令在执行查询时启用,则该命令显示跟踪窗格,此窗格提供有关事件类、子类、整型数据、文本数据、数据库ID、持续时间、启动时间、读、写以及CPU使用的信息。显示服务器跟踪可以用来帮助调整查询语句、存储过程和脚本,显示在查询分析器中。索引优化向导内容参阅联机丛书。6.你是一家进口商的数据库管理员,你正在创建一个存储订单信息的数据库。订单将会在一个client/server应用系统中录入,每次一个新的订单录入时,必须分配一个唯一的订单编号,订单编号必须以升序分配。每天平均有10000个订单被录入。你创建了一个新的名为Orders的表,并在这个表里添加了一个OrderNumber列。接下来你该做什么?(表的属性)3A.设置这个列的数据类型为uniqueidentifierB.设置这个列的数据类型为int,并为这个列设置IDENTITY属性C.设置这个列的数据类型为int,创建一个用户定义的方法来选择表中最大的订单编号D.设置这个列的数据类型为int,创建一个NextKey表,并被这个表添加一个NextOrder列,设置NextOrder列的数据类型为int,创建一个存储过程来检索并更新NextKey中的值答案: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.您是一出版社公司的数据库开发者。你创建以下存储过程来汇报某本书从年初至今的销售情况CREATEPROCEDUREget_sales_for_title@titlevarchar(80),@ytd_salesintOUTPUT4ASSELECT@ytd_sales=ytd_salesFROMtitlesWHEREtitle=@titleIF@@ROWCOUNT=0RETURN(-1)ELSERETURN(0)您创建一个脚本来执行这个存储过程。如果该存储过程成功执行,它应报道书的销售情况。如果失败,则将返回如下信息:“NoSalesFound”您该怎样创建该脚本?(存储过程)A.DECLARE@retvalintDECLARE@ytdintEXECget_sales_for_title‘NetEtiquette’,@ytdIF@retval0PRINT‘Nosalesfound’ELSEPRINT‘Yeartodatesales:’+STR(@ytd)GOB.DECLARE@retvalintDECLARE@ytdintEXECget_sales_for_title‘NetEtiquette’,@ytdOUTPUTIF@retval0PRINT‘Nosalesfound’ELSEPRINT‘Yeartodatesales:’+STR(@ytd)GOC.DECLARE@retvalintDECLARE@ytdintEXECget_sales_for_title‘NetEtiquette’,@retvalOUTPUTIF@retval0PRINT‘Nosalesfound’ELSEPRINT‘Yeartodatesales:’+STR(@ytd)GOD.DECLARE@retvalintDECLARE@ytdintEXEC@retval=get_sales_for_title‘NetEtiquette’,@ytdOUTPUTIF@retval0PRINT‘Nosalesfound’ELSEPRINT‘Yeartodatesales:’+STR(@ytd)GO答案:D5关键点在于要用变量来接受存储过程执行的结果,通过对结果的判断来确定打印出的信息10.您是一集装箱制造公司的数据库开发者。您的公司生产的集装箱是一些不同型号的。存储集装箱信息的表如下所示有Size、Conta

1 / 64
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功