美斯坦福在线考试系统 长工职SCCE G2 SQLadvance测试题

来源:互联网 发布:无法优化游戏的问题 编辑:程序博客网 时间:2024/05/29 18:33
美斯坦福在线考试系统 长工职SCCE G2 SQLadvance测试题      科目: SCCEG2SQLAdvance总分: 100分时间: 100分钟          一、单选题    (共100题,每题1分,说明:选择一项正确的答案)                  1、建立如下数据库表:                   CREATE TABLE department                   (                   DeptID int NOT NULL primary key,                   DeptName varchar (20) NOT NULL                   )                   CREATE TABLE Employee                   (                   EmployeeID int NOT NULL,                   DeptID int NOT NULL,                   Name varchar (20) NOT NULL                   )                   要想保证Employee表中每一个雇员(Employee)是唯一的,且只能属于在Department表中已经存在的部门,最佳的做法是(                   )                   A、EmployeeID和DeptID设为组合主键                   B、EmployeeID设为主键,同时在DeptID列上创建一个外键约束                   C、EmployeeID设为主键,同时在DeptID列上创建一个检查约束                   D、在DepartmentID列上创建一个唯一约束,同时在DeptID列上创建一个外键约束                   参考答案: B                  2、                  建立一张员工表(employee),当向表中插入数据时,若不提供入职时间(beginTime),就把系统当前时间自动作为员工入职时间插入数据库中,以下说法正确的是(                   )                  A、约束中不能使用各种函数,所以只能使用触发器来实现                   B、可以使用CHECK约束实现,默认值采用日期函数getDate()                   C、入职时间必须设为日期类型                   D、可以使用DEFAULT 约束实现,默认值采用日期函数getDate()                   参考答案: D                  3、                  为了加快对某表的访问速度,应对此表建立( )                   A、约束                  B、存储过程                  C、规则                  D、索引                   参考答案: D                  4、                  假设有表student的设计如下:                   ID(学号)                   Name(姓名)                   Address(家庭住址)                   Department(所在系)                   DepartmentHead(系主任)                   该表最高满足第( )范式                   A、1NF                  B、2NF                  C、3NF                  D、不满足任何范式                   参考答案: B                  5、                  为数据库中一个或多个表的数据提供另一种查看方式的逻辑表被称为( )                   A、存储过程                  B、触发器                  C、视图                  D、表                   参考答案: C                  6、                  要建立一张教师表,包含姓名、职称、级别等字段插入数据时,如果不输入级别字段,缺省值为“讲师”,最合适的实现方法是( )                  A、为 “级别” 字段建立default约束                  B、为“级别”字段建立check 约束                   C、在教师表上建立一个触发器 (trigger)                  D、为教师表插入数据编写一个存储过程进行控制                   参考答案: A                  7、                  现有订单表orders,包含数据如下表若查询既订购了产品P01,又订购了产品P02的顾客编号,可以执行以下( )sql语句                   cid (顾客编号) Pid (产品编号)                   C01                 P01                   C01                 P02                   C02                 P01                   C03      P02                   A、select distinct(cid) from orders o1 where o1.pid in                   ('p01','p02')                   B、select distinct(cid) from orders o1 where o1.pid='p01' and                   o1.pid='p02'                   C、select distinct(cid) from orders o1 where pid='p01' and                   exists (select * from orders where pid ='p02' and cid=o1.cid)                   D、select distinct(cid) from orders o1,orders o2 where                   o1.pid='p01' and o2.pid='p02'                   参考答案: C                  8、                  关于视图,以下说法错误的是( )                   A、使用视图,可以简化数据的使用                   B、使用视图,可以保护敏感数据                   C、视图是一种虚拟表,视图中的数据只能来源于物理数据表,不能来源于其它视图                   D、视图中只存储了查询语句,并不包含任何数据                   参考答案: C                  9、                  常用的系统存储过程不包括( )                   A、sp_tables                  B、sp_columns                  C、sp_stored_procedures                  D、sp_renametable                   参考答案: D                  10、                  分数表scores设计如下:courseID(课程编号),studentID(学生编号),score(分数)                   另有一个学生信息表student,包含studentID,sname(学生姓名)                   已知并非所有学生都参加了考试,现在查询所有及格学生的学生姓名,下面正确的是( )                   A、select sname from student where studentIin (select                   studentIfrom score where score>60)                   B、select sname from student where studentI= (select                   studentIfrom score where score>60)                   C、select sname from student where studentInot in (select                   studentIfrom score where score<=60)                   D、select sname from student where exists (select studentIfrom                   score where score>60)                   参考答案: A                  11、                  SQL Server数据库有两种登录认证方式其中在( )方式下,需要客户端应用程序连接时提供登录需要的用户标识和密码                   A、Windows身份验证                  B、以超级用户身份登录时                   C、SQL Server 身份验证                  D、以系统身份登录时                   参考答案: C                  12、                  SQL Server数据库中,下列不属于T-SQL事务管理语句的是( )                   A、BEGIN TRANSACTION                  B、ENTRANSACTION                   C、COMMIT TRANSACTION                  D、ROLLBACK TRANSACTION                   参考答案: B                  13、                  要建立一个约束,保证用户表(user)中年龄(age)必须在16岁以上,下面语句正确的是( )                   A、Alter table user add constraint ck_age CHECK(age>16)                   B、Alter table user add constraint df_age DEFAULT(16) for age                   C、Alter table user add constraint uq_age UNIQUE(age>16)                   D、Alter table user add constraint df_age DEFAULT(age>16)                   参考答案: A                  14、银行系统中有账户表和交易表,账户表中存储了各存款人的账户余额,交易表中存储了各存款人每次的存取款金额为保证存款人每进行一次存、取款交易,都需要更新该存款人的账户余额,以下选项中正确的做法是(                   )                   A、创建查看两张表的视图                  B、创建一个带事务的存储过程                  C、在账户表上创建检查约束                  D、在交易表上创建检查约束                   参考答案: B                  15、                  SQL                   Server数据库中包含两个表:Order订单表、Item订单子项表当一个新定单被加入时,数据要分别保存到Order和Item表中,要保证数据完整性,可以使用以下(                   )语句                   A、BEGIN TRANSACTION INSERT INTO Order VALUES (此处省略) INSERT                   INTO Item VALUES (此处省略) ENTRANSACTION                   B、BEGIN TRANSACTION INSERT INTO Order VALUES (此处省略) INSERT                   INTO Item VALUES (此处省略) I(@@ERROR = 0) COMMIT TRANSACTION                   ELSROLLBACK TRANSACTION                   C、BEGIN TRANSACTION INSERT INTO Order VALUES (此处省略) I(@@ERROR                   = 0) INSERT INTO Item VALUES (此处省略) I(@@ERROR = 0) COMMIT                   TRANSACTION ELSROLLBACK TRANSACTION ELSROLLBACK TRANSACTION                   D、BEGIN TRANSACTION INSERT INTO Order VALUES (此处省略) INSERT                   INTO Item VALUES (此处省略) I(@@ERROR <> 0) ROLLBACK TRANSACTION                   参考答案: B                  16、                  有一个学生信息表student,包含主键studentID                   (学生编号);又有分数表scores,包含studentID(学生编号)、                   score(考试分数)已知student表中共有50个学生,有45人参加了考试(分数存在scores表中),其中10人不及格执行以下sql语句:                   select * from student where exists (select studentid from                   score where score<60)                   可返回( )条记录                  A、50                  B、45                  C、10                  D、0                   参考答案: A                  17、                  create table student                   (                   id int identity(1,1),                   name varchar(20)                   )                   alter table student add constraint uq_name unique(name)                   insert into student values(null)                   insert into student values(null)                   insert into student values(‘jack’)                   insert into student values(‘jack’)                   依次执行以上SQL语句后,student表中存在( )行记录                   A、1                  B、2                  C、3                  D、4                   参考答案: B                  18、                  已知employee表中具有默认约束df_email,删除该约束的语句是( )                   A、Alter table employee drop constraint df_email                   B、Alter table employee remove constraint df_email                   C、Alter table employee delete constraint df_email                   D、Remove constraint df_email from table employee                   参考答案: A                  19、                  有关T-SQL中变量的使用,以下说法错误的是( )                   A、变量的使用必须先声明,后使用                  B、变量的赋值只能使用set语句                   C、可以使用print语句和select语句输出结果                  D、局部变量的命名必须以@打头                   参考答案: B                  20、                  现有学生表student和用户表user,两表中的数据如下:                   User表:                   Userid (int) Name (varchar)                   1 Lee                   2 Chen                   3 Jack                   4 Rose                   Student表:                   Studentid (int) Age (int)                   1 20                   2 15                   执行sql语句:select * from user union select * from student                   下面说法正确的是( )                   A、出现错误:name与age不是同一种数据类型                  B、正确执行,返回6行4列                   C、正确执行,返回6行2列                  D、正确执行,返回4行2列                   参考答案: A                 21、                  假设order表中存在orderid等于1的记录,执行下面T-SQL:                   BEGIN TRANSACTION                   Delete from Order where orderid=1                   IF (@@Error <> 0)                   ROLLBACK TRANSACTION                   ROLLBACK TRANSACTION                   以下说法正确的是( )                   A、执行成功,Orderid为1的记录被永久删除                  B、执行成功,Order表没有任何变化                   C、执行时出现错误                  D、执行成功,但事务处理并没有结束                   参考答案: B                  22、                  项目开发需要经过几个阶段,绘制数据库的E-R图应该在( )阶段进行                   A、需求分析                  B、概要设计                  C、详细设计                  D、代码编写                   参考答案: B                  23、                  将E-R图转换为表的过程中,如果实体之间存在多对多的关系,通常的做法是( )                   A、在两个实体间建立主外键关系                   B、在两个实体间建立关联表,把一个多对多的关系分解成两个一对多的关系                   C、在两个实体间建立关联表,把一个多对多的关系分解成两个一对一的关系                   D、在两个实体间不建立任何关系                   参考答案: B                  24、                  SQL SERVER的默认事务模式是( )                   A、显式事务模式                  B、隐性事务模式                  C、自动提交事务模式                  D、组合事务模式                   参考答案: C                  25、                  下面T-SQL语句,用于查看在某个表的某些列上创建的索引信息的是( )                   A、sp_helpindex                  B、sp_index                  C、xp_helpindex                  D、index                   参考答案: A                  26、                  从“产品”表中查询出价格高于产品名称为“ipod”的产品记录的SQL语句是( )                   A、SELECT * FROM 产品WHERE 价格> ipod;                   B、SELECT * FROM 产品WHERE 价格>(SELECT * FROM 产品WHER产品名称>‘ipod’);                   C、SELECT * FROM 产品WHERE EXISTS 产品名称=‘ipod’);                   D、SELECT * FROM 产品WHERE 价格>(SELECT 价格FROM 产品WHERE                   产品名称=‘ipod’);                   参考答案: D                  27、                  创建存储过程如下:                   Create procedure dis_num                   (                   @dis_no int, @dis_name char(20) OUTPUT                   )                   AS                   select @dis_name=boss_name from distributors                   where @dis_no= dis_no                   执行该存储过程的方法正确的是( )                  A、exec dis_num 258, @bossname output print @bossname                   B、declare @bossname char(20) exec dis_num 258,@bossname print                   @bossname                   C、declare @bossname char(20) exec dis_num‘258’,@bossname                   output print @bossname                   D、declare @bossname char(20) exec dis_num 258,@bossname output                   print @bossname                   参考答案: D                  28、                  下面( )不是数据库规范化要达到的效果                   A、改善数据库的设计                  B、实现最小的数据冗余                   C、可以用一个表来存储所有数据,使设计及存储更加简化                   D、防止更新、插入及删除异常                   参考答案: C                  29、在employee表的firstname字段上建立的非聚集索引的物理效果是( )                   A、所有的行按照firstname字段值升序排列并物理存储在数据页中                   B、在行存储上是没有影响的                   C、所有的行按照firstname字段值降序排列并物理地存储在数据页中                   D、所有的行被物理地存储在数据页上,并且根据firstname字段值按照索引建立时指定的顺序排序                   参考答案: B                  30、                  运行下面的语句:                   CREATE TABLE Numbers                   (                   N1 INT,                   N2 NUMERIC(5,0),                   N3 NUMERIC(5,3)                   )                   GO                   INSERT numbers VALUES(1.5,1.5,1.6452)                   SELECT* FROM numbers                   后得到的结果是( )                   A、返回2,2和1.645的结果集合                  B、返回1.5,1.5和1.646的结果集合                   C、CREATTABLE命令不会执行,因为你无法为列N2设置精度为0                   D、返回1,2和1.645的结果                   参考答案: D                  31、                  在SQL Server中,建立一个student 表包含一个Sex列,使用下列( )方法能保证Sex列中输入值只能是                   “M”或“F”                   A、创建一个存储过程验证Sex列中的数据                   B、对Student 表添加一个DEFAULT约束                   C、对Sex列添加一个触发器在提交后验证数据                   D、对Sex 列添加一个CHECK约束                   参考答案:                   32、                  在学校的数据库中规定大学生年龄不得超过29岁,硕士生不得超过38岁,学生成绩累计不得有3门以上不及格等规定在这种情况下,我们一般会用到DBMS(                   )功能                   A、数据字典管理                  B、数据存储管理                  C、安全性管理.                  D、数据完整性.                   参考答案: D                  33、                  想删除在Orders表的所有超过3年的订单( )                   A、Delete from Orders Where Ordersdate <                   DATEADD(yyyy,-3,getdate())                   B、Delete from Orders Where Ordersdate <                   DATEADD(yyyy,3,getdate())                   C、Delete from Orders Where Ordersdate < getdate()-3                   D、Delete from Orders Where Ordersdate < getdate()+3                   参考答案: A                  34、执行的下列操作:对ORDERS表执行一个DELETE语句删除数据,然后使用SELECT语句确认订单已经从ORDERS表中删除掉,第二天查询ORDERS表时发现取消的订单仍然存在,订单没有被删除的最可能的原因是(                   )                  A、查询是在隐式事务模式下执行的                   B、ORDERS表上的操作被事务回滚了                  C、还没有删除外键表中的相关行                   D、引用ORDERS表的外键表的事务回滚了这次操作                  参考答案: B                  35、假如一个公司有10个部门,每个部门有6-7个员工,但每个员工可能会不只在一个部门工作下面所给的数据库设计模型正确的是(                   )                  A、部门和员工之间是一种确定的一对多的关系                   B、部门和员工之间是一种不确定的一对多的关系                   C、建立一个关联表,从该关联表到员工表建立一个一对多的关系,然后再从该关联表到部门表建立一个对多的关系                   D、建立一个关联表,从员工表到该关联表建立一个一对多的关系,然后从部门表到该关联表建立一个一对多的关系                   参考答案: D                  36、                  下面T-SQL代码运行完的结果是( )                   declare @var int=0                   set @var=1                   while @var<3                   begin                   print ‘var小于3’                   set @var+=1                   break                   print ‘语句执行失败’                   end                   A、var小于3                   B、var小于3 var小于3 var小于3                   C、var小于3 语句执行失败                   D、var小于3 var小于3 var小于3 语句执行失败                   参考答案: A                  37、下列哪个SQL 语句属于操作数据库对象的语句( )                  A、Create                  B、Select                  C、Grant                  D、Insert                   参考答案: A                  38、                  在SQL Server数据库中,从Product表中查询出Price(价格)高于Pname                   (产品名称)为“网通IP电话卡”的所有记录中的最高价格的查询语句是( )                   A、SELECT * FROM Product WHERmax(Price)>’网通IP电话卡’                   B、SELECT * FROM Product WHERPrice>(SELECT max(*)FROM Product                   WHERPname=’ 网通IP电话卡’)                   C、SELECT * FROM Product WHEREXISTS Pname=’网通IP电话卡’                   D、SELECT * FROM Product WHERPrice>(SELECT max(Price)FROM                   Product WHERPname=’ 网通IP电话卡’)                   参考答案: D                  39、在SQL Server 中,声明一个最多可以存储10个字符的变量pwd,正确的代码是( )                   A、DECLARE pwd VARCHAR(10)                   B、DECLARE @pwd VACHAR(10)                   C、pwd VARCHAR(10)                   D、@pwd VARCHAR(10)                   参考答案: B                  40、                  在SQL Server                   中,已知Student表中有一个age列,数据类型是int,如果要限制该列的取值范围在18到28之间,可以使用以下哪个SQL语句(                   )                   A、alter table Student add check(age>=18 and age<=28)                   B、alter table Student add defult(age>=18 and age<=28)                   C、alter table Student add unique(age>=18 and age<=28)                   D、alter table Student add set(age>=18 and age<=28)                   参考答案: A                  41、                  在SQLServer中,假设Orders表中存在自动编号字段oid等于1的记录,执行下面T-SQL,以下说法正确的是( )                   BEGIN TRANSACTION                   Delete from Orders where oid=1                   If(@@Error<>0)                   ROLLBACK TRANSACTION                   Else                   COMMIT TRANSACTION                   A、执行成功,oid为1的记录被永久删除                   B、执行成功,Orders表没有任何变化                   C、执行时出现错误                   D、执行成功,但事务处理并没有任何结束                   参考答案: A                  42、                  在SQLServer 中,给定如下的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=@type                   A、建立了存储过程price_proc,所有参数都是输出参数                   B、建立了存储过程price_proc,返回的是用户指定图书种类数量及平均价格                   C、@count=count(*) 也可以用@count=count()代替                   D、创建存储过程失败,Select语句中使用了聚合函数,因此必须使用Group By进行分组                   参考答案: B                  43、                  在SQL Server 安全管理过程中,以下( )的概念类似于WinNT 中的用户组                   A、权限                  B、登录账户                  C、角色                  D、触发器                   参考答案: C                  44、                  在sql server中,与以下T-SQL等效的是( )                   Update titles set price = price * 1.05 where pub_id in (select                   pub_id from publishers)                   A、Update titles set price = price * 1.05 where exists (select                   pub_id from publishers)                   B、Update titles set price = price * 1.05 from titles where                   pub_id in publishers.pub_id                   C、Update titles set price = price * 1.05 where titles.pub_id                   =publishers.pub_id                   D、Update titles set price = price * 1.05 from titles inner                   join publishers on titles.pub_id= publishers.pub_id                   参考答案: D                  45、                  Sqlserver中,已知执行语句:Select count(score),sum(score)from score                   返回的结果是5和750,那么执行语句:Select avg(score) from score,返回的结果是( )                   A、5                  B、150                  C、1500                  D、750                   参考答案: B                  46、                  在SQL Server 中,执行以下的T-SQL,若能找到title_id为“tc2”的记录,将( )                   begin transaciton                   if exists(select title_id from titles where title_id='tc2')                   begin                   delete titles where title_id='tc2'                   rollback transaction                   print 'OK'                   end                   A、删除该记录行,不打印任何信息                   B、不删除该记录行,并且打印OK                   C、删除该记录行,并且打印OK                   D、不删除该记录行,也不打印任何信息                   参考答案: B                  47、                  在SQL Server中,分析下面的存储过程,执行后的结果是( )                   CREATE Procedure lookup(@a int)                   AS                   IF @a is null                   Begin                   Print ‘缺少参数’                   RETURN                   End                   Select * from sysobjects where id=@a                   RETURN                   Go                   EXECUTE lookup                   A、该存储过程会打印“缺少参数”                   B、该存储过程会基于无参数情况做一个查找,返回表中的所有行                   C、该存储过程有语法错误                   D、数据库服务器会打印一条消息,提示该存储过程需要提供一个参数                   参考答案: C                  48、Sql Server中已知有表,表中共有10条status列值为0的记录,创建视图:                   CREATE VIEW view1                   AS                   select * from student where status=0                   视图创建成功后,执行如下命令:                   Update view1 set status=1                   Select * from view1                   命令执行的结果是( )                   A、错误提示:不能对视图执行更新操作                   B、错误提示:不能对视图执行查询操作                   C、返回10条记录                   D、返回0条记录                   参考答案: D                  49、                  为表userinfo添加约束,语法如下:                   alter table userinfo add constraint uq_userid unique(userid)                   执行成功后,为userinfo表的( )字段添加了( )约束                   A、Userid ; 主键                   B、Userid ; 唯一                   C、Uq_userid ;外键                   D、Uq_userid ;检查                   参考答案: B                  50、                  运行如下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、null 3、100、2                   B、1、100、2l                   C、1、90.50、null                   D、1、90.5、null 3、100.0、2                   参考答案: C                  51、                  创建存储过程如下:                   CREATE procedure bookproc                   (                   @id int, @title char(20) OUTPUT                   )                   AS                   select @title=title from book where id= @id                   执行该存储过程的方法正确的是( )                   A、exec bookproc 1,@title output print @title                   B、exec bookproc @id =1,@title output print @title                   C、declare @title char(20) exec bookproc 1,@title output print                   @title                   D、declare @title char(20) exec bookproc @id =1,@title output                   print @title                   参考答案: C                  52、                  假设需要设计一个表,记录各个作者著作的所有图书信息,表结构设计如下:                   作者(作者名称、图书1、版本1、书价1、图书2、版本2、书价2、……),                   该表最高符合第( )范式                   A、1NF                  B、2NF                  C、3NF                  D、未规范化的                   参考答案: D                  53、                  分析下面的代码段,说法错误的是( )                   1  CREATE PROCEDURE proc_stuInfo                   2    @stuName VARCHAR(10),                   3    @m INT OUTPUT,                   4    @stuAge=18 INT                   5 AS                   6 .....代码略                   7  GO                   8                   9  DECLARE @s INT                   10 EXEC proc_stuInfo '张三',@s,30                   11 EXEC proc_stuInfo @stuAge=22,@stuName='李四',@m=@s OUTPUT                   A、此代码段创建了一个存储过程,并测试调用此存储过程                   B、第4行代码有误                   C、第10行代码有误                   D、第11行代码有误                   参考答案: D                  54、                  分析以下代码,说法正确的是( )                   select * from stuInfo where stuNo not in(select stuNo from                   stuMarks where writtemExam ! =100 )                   A、此语句查询笔试成绩不等于100分的学生所有信息                   B、此语句查询笔试成绩等于100分的学生所有信息                   C、此语句查询所有没有参加考试的学生信息                   D、此语句查询所有参加考试的学生信息                   参考答案: B                  55、                  语句:                   while (1=1)                   begin                   update stuMarks set labExam=labExam+1                   if((select max(labExam) from stuMarks)>=97)                   break                   end                   以上程序的运行结果是( )                   A、死循环,程序一直执行下去                   B、在stuMarks 表中将机试成绩加1分                   C、给stuMarks 表中给机试成绩加分,直到有人达到97分结束                   D、在stuMarks表中,机试成绩肯定不会有人超过97分                   参考答案: C                  56、                  select top(1) * from stuInfo where stNo not in(select top(2)                   stNo from stuInfo)                   以上语句的功能是( )                   A、查询学员信息表的第一条记录                   B、查询学员信息表的第二条记录                   C、查询学员信息表的前两条记录                   D、查询学员信息表中除了前两条记录之外的其余的第一条记录                   参考答案: D                  57、                  关于系统存储过程xp_cmdshell说法正确的是( )                   A、Sql Server允许登录的所有用户执行xp_cmdshell存储过程                   B、用于执行DOS命令                   C、用于查看某个表的约束                   D、添加或修改登录账户的密码                   参考答案: B                  58、                  关于批处理,下列说法错误的是( )                   A、GO是批处理的标志                   B、批处理中的语句集要么都执行,要么都不执行                   C、批处理的主要好处就是简化数据库的管理                   D、批处理可以提高执行效率                   参考答案: B                  59、                  可以与子查询一起使用以检查行或列是否存在的是( )子句                  A、exists                   B、in                   C、union                   D、Not in                   参考答案: A                  60、                  下面的T-SQL语句功能,描述正确的是( )                   SELECT * FROM Employee WHERE EXISTS(SELECT * FROM Expertise                   WHERE SkillLevel>5)                   A、如果所有员工技能都大于5级,则查询出全部的员工                   B、如果有一个员工的技能大于5级,就查询显示全部的员工                   C、如果存在着员工技能,就查询出全部员工                   D、查询出技能级别大于5级的全部员工                   参考答案:B                  61、                  要查询的数据来自多张表,下面( )方式无法完成任务                   A、使用UNION联合                   B、使用子查询                   C、使用局部变量                   D、使用多表联接查询                   参考答案: C                  62、                  关于标量值函数,说法错误的是( )                  A、标量值函数可以使用EXECUTE执行                   B、标量值函数可以在SELECT语句中直接调用                   C、标量值函数可以返回TABLE类型的值                   D、标量值函数的定义中可以使用多条SQL语句                   参考答案: C                  63、                  下列关于登录名和用户名的说法中错误的是( )                   A、登录名是服务器的一个实体,使用一个登录名只能进入服务器,而不能让用户访问服务器中的数据库资源                   B、登录名和用户名是1对1的映射关系                   C、用户名是一个或多个登录对象在数据库中的映射,可以对用户对象进行授权,以便为登录对象提供对数据库的访问权限                   D、一个登录名可以访问多个数据库                   参考答案: B                  64、                  假设数据库HR有员工表Employee,表中有字段HireDate(就职日期),对下面的代码描述正确的是( )                   USE HR                   GO                   CREATE SYNONYM dbo.Emp FOR HR.dbo.Employee                   GO                   SELECT * FROM dbo.Emp WHERE                   DATEDIFF(yyyy,Hiredate,getdate())>=10                   A、从Emp表中查询工龄大于等于10年的员工                   B、从Employee表中查询工龄大于等于10年的员工                   C、语句执行会出错,提示HR数据库中不存在对象Emp                   D、语句执行会出错,提示HR数据库中没有对象Employee                   参考答案: B                  65、                  一个学生只能就读于一个班级,而一个班级可以同时容纳多个学生,学生与班级之间是( )关系                A、一对一                  B、一对多                  C、多对一                  D、多对多                   参考答案: C                  66、                  E-R图中,实体用( )来表示                  A、矩形                  B、椭圆形                  C、菱形                  D、圆形                  参考答案: A                  67、                  表结构如下,其中# 号打头字段代表主键或组合主键,一份订单可以订购多种产品                   产品:# 产品编号,产品名称,产品价格;                   订单:# 订单编号,# 产品编号,订购日期,订购数量;                   该表最高符合第( )范式                   A、1NF                  B、2NF                  C、3NF                  D、未规范化的                   参考答案: C                  68、关于存储过程,以下说法正确的是( )                   A、不能在存储过程中使用CREATE VIEW命令                   B、T-SQL批代码的执行速度要快于存储过程                   C、存储过程必须带有参数                   D、存储过程不能返回结果集                   参考答案: A                  69、                  下面T-SQL代码运行完的结果是( )                   declare @counter int                   set @counter=1                   while @counter<3                   begin                   set @counter=@counter+1                   print @counter                   break                   print ‘loop’                   end                   A、2 loop                   B、2                   C、2 loop 3 loop                   D、2 3                   参考答案: B                  70、阅读下面T-SQL语句,对变量赋值时存在错误的是( )                   A、DECLARE @id INT,@price MONEY set @id=100 set @price=$2.21                   B、DECLARE @id INT,@price MONEY select @id=100,@price=2.21                   C、DECLARE @id INT,@price MONEY set @id=100, @price=2.21                   D、DECLARE @id INT,@price MONEY select @id=100 select                   @price=$2.21                   参考答案: C                  71、                  已知有student表,studentid为主键,现在表中共有10行记录,studentid列值从1                   到10                   创建视图:                   CREATE VIEW dbo.VIEW_student                   AS                   SELECT * FROM dbo.student                   接着执行如下命令:                   DELETE FROM VIEW_student WHERE (studentid = 8)                   然后执行查询命令:                   SELECT * FROM student                   SELECT * FROM VIEW_student                   假定上述命令全部执行成功,将各自返回( )( )行记录                   A、10,10                  B、10,9                  C、9,10                  D、9,9                   参考答案: D                  72、                  设计用户表时,身份证号为固定18位,对该字段最好采用( )数据类型                   A、int                  B、char                  C、varchar                  D、text                   参考答案: B                  73、                  判断下列T-SQL语句的执行结果( )                   select @x=1,@y=2, @z=3                   if @x>@y                   print 'x>y' --打印字符串'x>y'                   else if @z>@x                   print 'z>x'                   else if @y>@z                   print 'y>z'                   else                   print'z>y'                   A、x>y                  B、z>x                  C、y>z                  D、z>y                   参考答案: B                  74、                  判断下列T-SQL语句执行后输出的最后一个数字是( )                   declare @x int, @y int, @c int                   select @x = 1, @y=1                   while @x < 3                   begin                   print @x --打印变量x 的值                   while @y < 3                   begin                   select @c = 100*@x+ @y                   print @c --打印变量c 的值                   select @y = @y + 1                   end                   select @x = @x + 1                   select @y = 1                   end                   A、101                   B、201                   C、102                   D、202                   参考答案: D                  75、有关存储过程的参数默认值,说法正确的是( )                A、输入参数必须有默认值                   B、带默认值的输入参数,方便用户调用                   C、带默认值的输入参数,用户不能再传入参数                   D、输出参数也可以带默认值,方便用户调用                  参考答案: B                  76、                  有关子查询和联接查询的说法,错误的是( )                   A、子查询一般可以代替联接查询                   B、联接查询能代替所有的子查询,所以一般优先采用子查询                   C、如果需要显示多表数据,优先考虑联接查询                   D、如果只是需要作为查询的条件部分,一般考虑子查询                   参考答案: B                  77、                  第二范式确保( )                   A、每列的原子性                   B、每列都与主键有关                   C、每列都和主键列直接相关                   D、每列都不能再拆分                   参考答案:B                  78、                  给自定义变量赋值时,如果数据来源于表中的某一列,应采用( )方式                   A、select                   B、print                   C、set                   D、update                   参考答案: A                  79、                  语句:                   if not exists (select * from stuMarks where writtenExam>60 or                   labExam>60)                   update stuMarks set                   writtenExam=writtenExam+3,labExam=labExam+3                   执行后的效果是()                   A、如果笔试或机试成绩有一项有人超过60分,则每人的笔试和机试成绩加3分                   B、如果笔试或机试成绩都有人超过60分,则每人的笔试和机试成绩加3分                   C、如果笔试或机试成绩有一项没人超过60分,则每人的笔试和机试成绩加3分                   D、如果笔试或机试成绩没有一人超过60分,则每人的笔试和机试成绩加3分                   参考答案: D                  80、                  以ABCDE五级打分来显示笔试成绩                   1  select 学号=stuNo,成绩=case                   2 when writtenExam<60 then ‘E’                   3 when writtenExam between 60 and 69 then ‘D’                   4 when writtenExam between 70 and 79 then ‘C’                   5 when writtenExam between 80 and 89 then ‘B’                   6 else ‘A’                   7 end                   8  from stuMarks                   下列正确的说法是( )                   A、没有语法问题,可以正常执行                   B、第1行不能用等号,语法有误                   C、第6行语法有误                   D、第7行“end”可以不写                   参考答案: A                  81、                  查询没有参加考试的学员名单,下列正确的是( )                   A、select stName from stuInfo where stNo in(selcte stNo from                   stuMarks)                   B、select stName from stuInfo where stNo not in(selcte stNo                   from stuMarks)                   C、select stName from stuInfo where stNo exists(selcte stNo                   from stuMarks)                   D、select stName from stuInfo where stNo not exists(selcte stNo                   from stuMarks)                   参考答案: B                  82、                  关于错误信息的处理,说法错误的是( )                   A、一般可以用print显示错误信息                   B、可以用raiserror语句显示错误信息                   C、在raiserror语句中,错误信息可以用户自己设定                   D、raiserror语句只用于显示错误,不能更改系统变量@@error的值                   参考答案: D                  83、                  E-R图中,关系用( )来表示                   A、矩形                  B、椭圆形                  C、菱形                  D、圆形                   参考答案: C                  84、                  设计数据库的步骤不包括( )                   A、收集信息                   B、需求分析                   C、标识对象                   D、标识对象之间的关系                   参考答案: B                  85、                  E-R 图不能用来表示( )                   A、实体                   B、属性                   C、关系                   D、行为                   参考答案: D                  86、                  数据库设计范式的最高级别是( )                   A、1N                  B、3N                  C、5N                  D、6N                  参考答案: C                  87、                  E-R 图中,椭圆型用于表示( )                   A、实体                   B、属性                   C、关系                   D、映射基数                   参考答案: B                  88、                  要查询数据库 SCCE 中是否存在表 Student,应该使用的 SQL 语句是( )                   A、SELECT * FROM sysDatabases WHERName = 'SCCE'                   B、SELECT * FROM sysObjects WHERName = 'SCCE'                   C、SELECT * FROM sysDatabases WHERName = 'Student'                   D、SELECT * FROM sysObjects WHERName = 'Student'                   参考答案: D                  89、                  授予用户 Student 对 User 表的修改的权限,正确的授权语句是( )                   A、GRANT UPDATON User ON Student                   B、GRANT UPDATTO User TO Student                   C、GRANT UPDATON User TO Student                   D、GRANT UPDATTO User ON Student                   参考答案: C                  90、                  关于变量,下列说法不正确的是( )                   A、变量分为局部变量和全局变量                   B、局部变量通常都使用一个@作为前缀                   C、全局变量由系统定义和维护                   D、用户可以自定义全局变量                   参考答案: D                  91、                  在 SQL Server中,设有 Employee 表,则 SELECT SUM(CASE Sex WHEN '男'                   THEN 1 ELSE -1 END) FROM Employee 用于( )                   A、检索男员工的人量                   B、检索所有员工的总人量                   C、检索男女员工的人数差                   D、检索男女员工的人数平均值                   参考答案: C                  92、                  关于全局变量,下列说法不正确的是( )                   A、@@ERROR 指示当前批处理的 T_SQL 错误的错误号                   B、@@IDENTITY 指示最后一次插入的标识值                   C、@@TRANCOUNT 指示当前连接打开的事务数                   D、@@ROWCOUNT 指示受上一个 SQL 语句影响的行数                   参考答案: A                  93、要将一组语句执行 8 次,需使用( )结构                   A、if..else..                   B、case                  C、while                  D、for                  参考答案: C                  94、                  在 SQL Server中,以下关于索引的说法错误的是( )                   A、聚集索引决定表中数据的存储顺序                   B、一个表只能有一个聚集索引                   C、一个表只能有一个非聚集索引                   D、非聚集索引的顺序有可能和表的存储顺序相同                   参考答案: C                  95、                  在 SQL Server中,以下关于视图的说法错误的是( )                   A、视图是一个虚拟的表                   B、可以通过修改视图来修改基表                   C、视图可以提高安全性                   D、试图不能简化数据的查询操作                   参考答案: D                  96、                  在( )的列上适合创建索引                   A、频繁插入                   B、频繁删除                   C、频繁更改                   D、频繁查询                   参考答案: D                  97、                  在 SQL Server中,下列关于索引的说法正确的是( )                   A、索引必须由程序员设计,否则数据库不提供索引                   B、当创建唯一约束时,自动创建唯一索引                   C、索引可以提高查询速度,在表上索引越多越好                   D、一个表可以有多个聚集索引,默认聚集索引在主键上                   参考答案: B                  98、                  在 SQL Server中,给定创建视图的代码如下                   CREATE VIEW ABCD ____ SELECT * FROM Sales WHERE QTY>90                   则空白处应填写的正确的关键字为( )                   A、ON                   B、AS                   C、GO                   D、ALTER                   参考答案: B                  99、                  在 SQL Server中,使用 T-SQL 编程时,对变量赋值可以使用_____或______语句( )                   A、SET SELECT                   B、PRINT SELECT                   C、SET MAK                  D、LET SET                   参考答案: A                  100、                  SQL92 标准是 T-SQL 的( )                   A、子集                   B、交集                   C、补集                   D、没有可参照性                   参考答案: A

1 0
原创粉丝点击