SQL高级复习题笔试.doc_第1页
SQL高级复习题笔试.doc_第2页
SQL高级复习题笔试.doc_第3页
SQL高级复习题笔试.doc_第4页
SQL高级复习题笔试.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

.SQL高级复习题类型:(笔试)范围:内测/月考日期:时长:1小时总分数:100 分姓名:准考证号:证件号码:理论部分注意:考试结束试卷必须交回,答案填写在答题卡上 资料.1. ( )不属于任何文件组。(选一项)A、次数据文件B、主数据文件C、日志文件D、其他2. E-R图中,关系集用下面( )来表示。(选一项)A、矩形B、椭圆形C、菱形D、圆形3. SQL Server数据库有2种登录认证方式。其中在( )方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。(选一项)A、Windows身份验证。B、以超级用户身份登录时。C、SQL Server 身份验证。D、以系统身份登录时。4. SQL Server数据库中,下列不属于T-SQL事务管理语句的是(选一项)A、BEGIN TRANSACTION;B、END TRANSACTION;C、COMMIT TRANSACTION;D、ROLLBACK TRANSACTION;5. Sql server中,( )命令用来删除表对象。(选一项)A、DropB、RemoveC、TruncateD、Delete6. SQLServer2005中,已知执行语句:select count(score),sum(score)from score返回的结果是10和750,那么执行语句:select avg(score) from score,返回的结果是(选一项)A、10B、75C、750D、75007. SQLSever 2005中数据库中,关键字()标志着批处理的结束。(选一项)A、ENDB、GOC、FINISHD、PRINT8. UNIQUE约束和主键约束也是哪种完整性的体现(选一项)A、域完整性B、引用完整性C、实体完整性D、其他9. 对于下面的存储过程:CREATE PROCEDURE Myp1 p Int AsSelect Studentname,Age from Students where Age=p假如你要在Students表中查找年龄是18岁的学生,()可以正确的调用这个存储过。(选一项)A、EXEC Myp1 p = 18B、EXEC Myp1 p = 18C、EXEC Myp1 p = 18D、EXEC Myp1 p = 1810. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是(选一项)A、多对多B、一对一C、多对一D、一对多11. 关于存储过程,以下说法正确的是(选一项)A、不能在存储过程中使用CREATE VIEW命令。B、T-SQL批代码的执行速度要快于存储过程。C、存储过程必须带有参数。D、存储过程不能返回结果集。12. 关于视图,下列说法正确的是(选一项)A、视图是用来简化复杂查询语句的良好手段,但不能嵌套B、视图和索引都不是真实存在的数据,因为不是对象,所以关于他的定义不是保存在sysobjects表,而是sysviews表C、要想让别人不知道建立视图的命令,就在建立时添加with encryptionD、视图无法用drop命令删除,应使用delete命令13. 关于数据库三大范式,以下说法错误的是(选一项)A、数据库设计满足的范式级别越高,数据库性能越好B、数据库的设计范式有助于规范数据库的设计C、数据库的设计范式有助于减少数据冗余D、一个好的数据库设计可以不满足某条范式14. 关于子查询,以下说法正确的是(选两项)A、一般来说,表连接都可以用子查询替换。B、一般来说,子查询都可以用表连接替换。C、相对于表连接,子查询适合于作为查询的筛选条件。D、相对于表连接,子查询适合于查看多表的数据。15. 关于子查询下列说法中正确的是(选一项)A、子查询中的条件可以有变量B、子查询可以放在父查询的where后,但无法放在select和from中间C、如果子查询放在父查询中对父查询的语法结构不产生影响,那么子查询可以省略外面的小括号D、子查询可以嵌套,但最多不能超过3层16. 假定一位教师可讲授多门课程,一门课程可由多位教师讲授,教师与课程之间是(选一项)A、一对一的关系B、一对多的关系C、多对一的关系D、多对多的关系17. 假设order表中存在orderid等于1的记录,执行下面T-SQL:BEGIN TRANSACTIONDelete from Order where orderid=1IF (Error 0)ROLLBACK TRANSACTIONROLLBACK TRANSACTION以下说法正确的是(选一项)A、执行成功,Orderid为1的记录被永久删除。B、执行成功,Order表没有任何变化。C、执行时出现错误。D、执行成功,但事务处理并没有结束。18. 假设需要设计一个表,记录各个作者著作的所有图书信息,表结构设计如下:作者(作者名称、图书1、版本1、书价1、图书2、版本2、书价2、),该表最高符合第( )范式。(选一项)A、一B、二C、三D、未规范化的19. 假设有表student的设计如下:ID(学号),Name(姓名),Address(家庭住址),Department(所在系),DepartmentHead(系主任). 该表最高满足第( )范式。(选一项)A、一B、二C、三D、不满足任何范式;20. 建立一张员工表(employee),当向表中插入数据时,若不提供入职时间(beginTime),就把系统当前时间自动作为员工入职时间插入数据库中,以下说法正确的是(选一项)A、约束中不能使用各种函数,所以只能使用触发器来实现。B、可以使用CHECK约束实现,默认值采用日期函数getDate()。C、入职时间必须设为日期类型。D、可以使用DEFAULT 约束实现,默认值采用日期函数getDate()。21. 将E-R图转换为表的过程中,如果实体之间存在多对多的关系,通常的做法是(选一项)A、在两个实体间建立主外键关系。B、在两个实体间建立关联表,把一个多对多的关系分解成两个一对多的关系。C、在两个实体间建立关联表,把一个多对多的关系分解成两个一对一的关系。D、在两个实体间不建立任何关系。22. 命令SELECT 学号,AVG(成绩) AS 平均成绩 FROM XS_KC GROUP BY 学号 HAVING AVG(成绩)=85,表示(选一项)A、查找XS_KC表中平均成绩在85分以上的学生的学号和平均成绩B、查找平均成绩在85分以上的学生C、查找XS_KC表中各科成绩在85分以上的学生D、查找XS_KC表中各科成绩在85分以上的学生的学号和平均成绩23. 模式查找like _a%,下面哪个结果是可能的(选一项)A、ailiB、baiC、bbaD、cca24. 某表stuinfo只有2行记录,并且stuname是主键列,则下列语句Select name = stuname from stuinfo执行结果说法正确的是(选一项)A、出现错误B、没有错误,但name中没有存储任何值C、name存储的是第一行的stunameD、name存储的是第二行的stuname25. 某数据库表里的studentID列被定义为studentID int identity(50,2),首先你添加了3条记录,然后你把第二条记录删除掉,此时,若增加另外一条记录,studentID的值将是(选一项)A、8B、54C、56D、5826. 如果要确保一个表中的非主键列不输入重复值,应在该列上定义(选一项)A、PRIMARY KEYB、UNIQUE KEYC、CHECKD、FOREIGN KEY27. 设计用户表时,身份证号为固定18位长,对该字段最好采用( )数据类型。(选一项)A、intB、charC、varcharD、text28. 使用T-SQL定义两个局部变量AA和BB,正确语句是(选一项)A、DECLARE AA,BBB、PRIVATE AA,BBC、PUBLIC AA,BBD、DECLARE AA,BB29. 为表userinfo添加约束,语法如下:alter table userinfo add constraint uq_userid unique ( userid )执行成功后,为userinfo表的( )字段添加了( )约束。(选一项)A、Userid ; 主键B、Userid ; 唯一C、Uq_userid ;外键D、Uq_userid ;检查30. 为了加快对某表的访问速度,应对此表建立(选一项)A、约束B、存储过程C、规则D、索引31. 为数据库中一个或多个表中的数据提供另一种查看方式的逻辑表被称为(选一项)A、存储过程B、触发器C、视图D、表32. 下列包含group by的语句正确的是(选一项)A、Select stuid , stuname from stuinfo group by stuidB、Select stuid from stuinfo where stuid1000 group by stuidC、Select count(stuid) , stuname from stuinfo group by stuidD、Select stuid , count(stuname) from stuinfo group by stuname33. 下列标识符可以作为局部变量使用(选一项)A、yvarB、My varC、MyvarD、My var34. 下列哪种操作能够得到学生表的最详细信息(选一项)A、exec sp_help studentB、exec sp_helptext studentC、exec sp_helptable studentD、exec sp_tables student35. 下列行为中,()定义了一个存储过程。(选一项)A、如果没有提供其他值,则使用此列中定义的值B、定义了一个有相关列的行的集合C、当用户修改数据时,一种特殊形式的存储过程被自动执行D、SQL语句的预编译集合36. 下面()不是数据库规范化要达到的效果。(选一项)A、改善数据库的设计B、实现最小的数据冗余C、可以用一个表来存储所有数据,使设计及存贮更加简化D、防止更新、插入及删除的时候,产生数据丢失37. 下面T-SQL代码运行完的结果是(选一项)declare counter intset counter=1while counter16)B、Alter table user add constraint df_age DEFAULT(16) for age。C、Alter table user add constraint uq_age UNIQUE(age16)。D、Alter table user add constraint df_age DEFAULT(age16)。43. 一般情况下,关系数据模型与对象模型之间有哪些匹配关系(选三项)A、表对应类B、记录对应对象C、表的字段对应类的属性D、表之间的参考关系对应类之间的依赖关系44. 一个学生只能就读于一个班级,而一个班级可以同时容纳多个学生,学生与班级之间是( )关系。(选一项)A、一对一B、一对多C、多对一D、多对多45. 已知employee表中具有默认约束df_email, 删除该约束的语句为(选一项)A、Alter table employee drop constraint df_emailB、Alter table employee remove constraint df_emailC、Alter table employee delete constraint df_emailD、Remove constraint df_email from table employee46. 已知表A的列amount是int类型,表A的数据如下:Amount123现有如下语句,Declare one intSelect one = amount from A则变量one的结果是(选一项)A、1B、2C、3D、错误47. 已知有student表,studentid为主键,现在表中共有10行记录,studentid列值从1到10。创建试图:CREATE VIEW dbo.VIEW_studentASSELECT * FROM dbo.studentGO接着执行如下命令:DELETE FROM VIEW_student WHERE (studentid = 8);然后执行查询命令:SELECT * FROM student;SELECT * FROM VIEW_student;假定上述命令全部执行成功,将各自返回( )( )行记录。(选一项)A、10,10B、10,9C、9,10D、9,948. 以下代码能输出的代码是(选一项)A、declare num nvarchar(10)num = Print numB、declare num nvarchar(10)num = Select numC、If( true )Print OKD、If( 1=1 )Select OK49. 以下关于规范设计的描述正确的是(选两项)A、规范设计的主要目的是消除数据冗余。B、规范设计往往会增加数据库的性能。C、设计数据库时,规范化程度越高越好。D、在规范化数据库中,易于维护数据完整性。50. 以下关于外键和相应的主键之间的关系,正确的是(选一项)A、外键并不一定要与相应的主键同名B、外键一定要与相应的主键同名C、外键一定要与相应的主键同名而且唯一D、外键一定要与相应的主键同名,但并不一定唯一51. 银行系统中有帐户表和交易表,帐户表中存储了各存款人的帐户余额,交易表中存储了各存款人每次的存取款金额。为保证存款人每进行一次存、取款交易,都正确的更新了该存款人的帐户余额,以下选项中正确的做法是(选一项)A、在帐户表上创建insert触发器。B、在交易表上创建insert触发器。C、在帐户表上创建检查约束。D、在交易表上创建检查约束。52. 有关T-SQL中变量的使用,以下说法错误的是(选一项)A、变量的使用必须先声明,后使用。B、变量的赋值只能使用set语句。C、可以使用print语句和select语句输出结果。D、局部变量的命名必须以打头。53. 有一张销售表(orders),包含销售员编号(salepersonID)、地区编号(regionID)、销售额(orderamount)三列,其中销售员编号为主键,现希望统计各地区销售总额以及所有销售之和,下面()语句可以实现这一愿望。(选一项)A、SELECT regionID,SUM(orderamount) From ordersB、SELECT regionID,SUM(orderamount) From orders GROUP BY regionIDC、SELECT regionID,orderamount From ordersD、SELECT * FROM orders54. 阅读下面T-SQL代码:USE masterGOCREATE DATEBASE MyDB2ON(;SIZE=2.MAXSIZE=5.FILEGROWTH=1)GO以下说法正确的是(选一项)A、创建成功,数据文件的初始大小为50KB,最大允许增加到1000KBB、创建成功,数据文件每次增长以1M作为单位C、创建失败,因为必须至少要指定数据文件所在的物理文件的位置D、创建失败,因为必须要指定数据库的日志文件名称55. 阅读下面T-SQL语句,对变量赋值时存在错误的是(选一项)A、DECLARE id INT,price MONEY set id=100 set price=$2.21B、DECLARE id INT,price MONEY select id=100,price=2.21C、DECLARE id INT,price MONEY set id=100, price=2.21D、DECLARE id INT,price MONEY select id=100 select price=$2.2156. 运行如下T-SQL,结果返回包含( )的记录集。(选一项)create table scores (scoreid int identity(1,2),score numeric(4,2) not null,courseid int)insert into scores values(90.5, null);insert into scores values(100, 2);select * from scores;A、1、90.5、null3、100、2B、1、100、2lC、1、90.50、nullD、1、90.5、null3、100.0、257. 运行以下语句,输出结果是(选一项)CREATE PROC proc_lookupmystuNo varchar(8)=NULLAS IF mystuNo IS NULL BEGIN Print 您忘记了传递学号参数 RETURN ENDSELECT * FROM stuInfo WHERE stuNO = mystuNoGOExec Proc_lookupA、编译错误B、调用存储过程Proc_lookup出错C、显示:您忘记了传递学号参数D、显示空的学员信息记录集58. 在( )子查询中,内层查询要处理多次,内层查询的条件依赖于外层查询中的某些值(选一项)A、IN子查询B、EXIST子查询C、JOIN子查询D、NOT IN子查询59. 在MS SQL Server中,用来显示数据库信息的系统存储过程是(选一项)A、sp_dbhelpB、sp_dbC、sp_helpD、sp_helpdb60. 在score表上创建一个触发器:create trigger tri_score on score for update,deleteasif (select count(*) from inserted)0print(success)go在查询分析器上执行以下( )语句,可能会输出“success”。(选一项)A、Update score set score=20B、Delete from score where score=ALL(SELECT MAX(QTY) FROM SALES),结果(选一项)A、正确查询,并返回Sales表中的所有的数据行B、正确查询,并返回一行数据C、提示子查询中因缺少GROUP或者GROUP BY子句而产生语法错误D、提示错误,因为在子查询中使用父查询中的同一张数据库表时,要求使用62. 在SQL Server 2005中,给定如下的T-SQL代码,以下说法正确的是(选一项)Create procedure price_proc(count int output, avg_price money output,type Char(12)=business)as Select Count=count(*),avg_price=Avg(price) from titles where type=typeA、建立了存储过程price_price,所有参数都是输出参数B、建立了存储过程price_price,返回的是用户指定图书种类的数量及平均价格C、Count=count(*)也可以使用Count=count()代替D、创建存储过程失败,因为Select语句中使用了聚合函数,因此必须使用Group By进行分组63. 在SQL Server2005的安全类模型中,提供了“服务器”和()两种类型的角色。(选一项)A、客户端B、数据库C、操作系统D、数据对象64. 在SQL Server2005的查询分析器中运行以下T-SQL:USE PUBSGOCREATE TABLE My_Table(a int NULL, b int NULL)GOCREATE TRIGGER my_trig ON My_Table FOR INSERTASIF UPDATE(b) BEGIN CREATE DATABASE AAA PRINT OK ENDGOINSERT My_Table VALUES(3,4)GOUPDATE My_Table SET a=5 WHERE b=4GO(选一项)A、正确创建数据库AAA,并且打印OKB、第一次正确创建数据库AAA,打印OK,在第二次触发的时候报告错误信息C、报告错误信息,提示不能在触发器中使用CREATE DATABASE语句D、该触发器不会被触发。代码运行完毕后,不创建数据库,也不会得到任何输出信息65. 在SQL Server2005中,创建存储过程如下,要在Students表中查找Age(年龄)是18岁的学生,()可以正确的调用这个存储过程。(选两项)A、EXEC Mypl 18B、EXEC Mypl p = 18C、EXEC Mypl p = 18D、EXEC Mypl P = 1866. 在SQLServer2005中,为数据库表建立索引能够(选一项)A、防止非法的删除操作B、防止非法的插入操作C、提高查询性能D、节约数据库的磁盘空间67. 在SQL Server2005中,与下列T SQL语句等效的语句为(选一项)UPDATE A SET A1 = A1 * 2 WHERE A2 IN (SELECT A2 FROM B WHERE B1 = 2)A、UPDATE A SET A1 = A1 * 2 INNER JOIN B ON B . B1 = 2B、UPDATE A SET A1 = A1 * 2 FROM A INNER JOIN B ON B . B1 = 2C、UPDATE A SET A1 = A1 * 2 WHERE A INNER JOIN B ON A . A2 = B . A2 AND B . B1 = 2D、UPDATE A SET A1 = A1 * 2 FROM A INNER JOIN B ON A . A2 = B . A2 AND B . B1 = 268. 在SQL Server查询分析器中,下面语句是用ROUND函数对数据四舍五入和截短处理:SELECT round(918.2736,3),round(918.2736,-2)运行之后得到的结果是(选一项)A、918.2730 和 900.0000B、918.2740 和 900.0000C、918.2734 和 900D、918.2736 和 918.270069. 在SQL SERVER服务器上,存储过程是一组预先定义并( )的Transact-SQL语句。(选一项)A、保存B、编译C、解释D、编写70. 在SQL Server数据库中,()可以看成为虚拟的表。(选一项)A、游标B、视图C、全文索引D、存储过程71. 在SQL Server数据库中,你想得到在products表中最贵的产品名称和价格应该使用的正确查询是(选一项)A、SELECT TOP 1 Productname, Price FROM Products ORDER BY PriceB、SELECT Productname, MAX(Price)FROM ProductsC、SELECT TOP 1 Productname, Price FROM Products ORDER BY Price DESCD、SELECT Productname, MAX(Price)FROM Products GROUP BY Productname72. 在SQLSever中,执行存储过程MY_PROC的正确的T_SQL为(选一项)A、RUN MY_PROCB、EXECUTE MY_PROCC、START MY_PROCD、SHELL MY_PROC73. 在SQLServer 20050 中,声明一个最多可以存储5个字符的变量A,正确的代码为 (选一项)A、DECLARE A VARCHAR(5)B、DECLARE A VARCHAR(5)C、Private A

温馨提示

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

评论

0/150

提交评论