一:单选题(每题1.5分,共60分)
1. 学生信息表StudentInfo如下所示: 学号 姓名 所在省市 0001 李辉 北京 0002 张明 上海 0003 王小玉 北京 0004 李淑华 湖南 0005 赵静 上海 ┆ ┆ ┆
查询所有学生来自于哪几个省市使用的语句为()。(选择一项)
A) Select unique 所在省市 from StudentInfo B) Select 所在省市 from StudentInfo
C) Select only 所在省市 from StudentInfo D) Select distinct 所在省市 from StudentInfo
2. 公司需要管理员工档案,你创建了2个表:员工表employees和部门表departments。 以下是两表的部分内容。 employees
编号 姓名 年龄 部门编号 1 王涛 25 1 2 张力 24 1 3 李明 30 2 4 高嘉 24 3 Departments
编号 部门名称 1 人力资源部 2 技术部 3 销售部
下列那列适合作为外键()。(选择一项)
A) Employees中的编号 B) Employees中的部门编号 C) departments中的编号 D) 以上都适合
3. 你使用以下T-SQL语句创建了一个视图v_emp和一个表students, create view v_emp as select * from emp where deptno=10; create table students( id number(5),
stuname varchar2(10) )
请问这两个语句是:()。(选择一项)
A) DDL(数据定义语言) B) DML(数据操纵语言) C) DCL(数据控制语言) D) DQL (数据查询语言)
4.当SQL登录帐户被授权为数据库用户后,要查询数据库中的表,还需要对其赋予select 权限,实现赋权的T-SQL语言属于()。(选择一项) A) DDL(数据定义语言) B) DML(数据操纵语言) C) DCL(数据控制语言) D) DQL (数据查询语言)
5. 你是公司的数据库管理员,数据库benet中有个员工表employees,该表中有职务列。你想检查哪些员工的信息中没有填写职务一栏,应该使用子句()。(选择一项)
A) Select * from employees where 职务=NULL B) Select * from employees where 职务=’NULL’ C) Select * from employees where 职务 IS NULL D) Select * from employees where 职务 IS ‘NULL’
6. 职工信息表如下表所示:
编号 姓名 年龄 性别 0001 李明辉 35 男 0002 张明华 45 男 0003 李淑琴 34 女 .... .... .... ....
如果表中的年龄是整数,性别为字符型,查询表中年龄在40岁以上的男性的语句为()。(选择一项)
A) SELECT 姓名,年龄 FROM 职工信息表 WHERE 年龄>40 AND 性别=’男’
B) SELECT 姓名,年龄 FROM 职工信息表 WHERE 年龄>40 AND 性别IS男
C) SELECT 姓名,年龄 FROM 职工信息表 WHERE 年龄>40 AND 性别=男
D) SELECT 姓名,年龄 FROM 职工信息表 WHERE 年龄>’40’ AND 性别=’男’
7. 数据库管理员创建了一个设备清单表格,包括以下几项:编号,名称,类型,价格,规格,数量。请问最适合做表格主键的是()。(选择一项) A) 名称 B) 类型 C) 编号 D) 规格
8. 为表userinfo添加约束,语法如下:
alter table userinfo add constraint uq_userid unique ( userid ) 执行成功后,为userinfo表的()字段添加了()约束。
A) Userid 主键
B) Userid 唯一 C) Uq_userid 外键 D) Uq_userid 检查
9. 假设有表scores的设计如下: ID(编号,主键)
StudentID(学生编号) CourseID(课程编号) Score(分数)
现在要查询参加过至少两门课程考试的学生的各门课程的平均成绩。以下sql语句正确的是()(选择一项)
A) Select studentID, avg(score) from scores group by studentID having count(studentID)>1 B) Select studentID, avg(score) from scores group by studentID where count(studentID)>1 C) Select studentID, avg(score) from scores where count(studentID)>1 group by studentID D) Select studentID, avg(score) from scores having count(studentID)>1
10.授予用户teacher对Score表的插入和修改的权限,正确的授权语句是()
A) Grant insert,update to table Score ON teacher B) Grant insert and update to table Score ON teacher
C) Grant insert,update on Score to teacher
D) Grant insert and update ON Score to teacher
11. 建立如下数据库表: CREATE TABLE department(
DeptID number(3) NOT NULL primary key, DeptName varchar2 (20) NOT NULL );
CREATE TABLE Employee (
EmployeeID number(6) NOT NULL, DeptID number(3) NOT NULL, Name varchar2 (20) NOT NULL );
要想保证Employee表中每一个雇员(Employee)是唯一的,且只能属于在Department表中已经存在的部门,最优的做法是()。(选择一项)
A) 把EmployeeID 和DeptID 设为组合主键。
B) 把EmployeeID 设为主键,同时在DeptID列上创建一个外键约束。 C) 把DeptmentID 设为主键,同时在DeptID列上创建一个外键约束。 D) 在DeptmentID 列上创建一个唯一约束,同时在DeptID列上创建一个
外键约束。
12. 为了加快对某表的访问速度,应对此表建立()。(选择一项)
A) 约束 B) 存储过程
C) 视图
D) 索引
13.为数据库中一个或多个表中的数据提供另一种查看方式的逻辑表被称为()。(选择一项)
A) 存储过程 B) 触发器
C) 视图 D) 表
14. 要建立一个教师表,包含姓名、职称、级别等字段。若插入数据时,级别字段如果不输入,缺省值为‘讲师’,最合适的实现方法是()。(选择一项)
A) 为 ” 级别 ”字段建立default约束。 B) 为 “ 级别 ”字段建立check约束。
C) 在教师表上建立一个触发器(trigger)。 D) 为教师表数据输入一个存储过程进行控制。
15. 现有订单表orders, 包含数据如下表。若查询既订购了产品P01,又订购了产品P02的顾客编号,可以执行以下()sql语句。(选择一项) cid (顾客编号) C01 C01 C02 C03 Pid (产品编号) P01 P02 P01 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’;
16. 分数表scores设计如下: courseID(课程编号) studentID(学生编号) score(分数)
另有一个学生信息表student,包含studentID,sname(学生姓名)。
已知并非所有学生都参加了考试,现在查询所有及格学生的学生姓名,下面正确的是()。(选择一项)
A) select sname from student where studentID in (select studentID
from score where score>60)
B) select sname from student where studentID = (select studentID
from score where score>60)
C) select sname from student where studentID not in (select
studentID from score where score>60)
D) select sname from student where exists (select studentID from score where score>60)
17. 要建立一个约束,保证用户表(user)中年龄(age)必须在16岁以上,下面语句正确的是() (选择一项)
A) Alter table user add constraint ck_age CHECK(age>16) B) Alter table user add constraint df_age DEFAULT(age>16)
C) Alter table user add constraint uq_age UNIQUE(age>16)
D) Alter table user add constraint df_age DEFAULT(age>16)
18. 现有一个学生信息表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
19. SELECT-SQL语句是______。
A、选择工作区语句 B、数据查询语句 C、选择标准语句 D、数据修改语句
20.只有满足联接条件的记录包含在查询结果中,这种联结为___
A) 左联结 B) 右联结
C) 内部联结(等值联结) D) 全联结
21.从数据库中删除表的命令是_____
A) drop table B) alter table C) delete table D) use
22.delete from S where 年龄>60语句的功能是____
A) 从S表中彻底删除年龄大于60岁的记录。 B) S表中年龄大于60岁的记录被加上删除标记 C) 删除S表
D) 删除S表的年龄列
23.在SQL中,删除视图用_____语句。
A) drop schema命令 B) create table命令
C) drop view 命令 D) drop index命令 24.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。 SQL语句正确的是_____。
SELECT 姓名,书名 FROM 借阅,图书,读者
WHERE 借阅.借书证号=\"0001\" and _______________。
A、图书.总编号=借阅.总编号 AND 读者.借书证号=借阅.借书证号。 B、图书.分类号=借阅.分类号 AND 读者.借书证号=借阅.借书证号。 C、读者.总编号=借阅.总编号 AND 读者.借书证号=借阅.借书证号。 D、图书.总编号=借阅.总编号 AND 读者.书名=借阅.书名。 25.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,分别求出各个单位当前借阅图书的读者人次。 下面的SQL语句正确的是___。
SELECT 单位,______ FROM 借阅,读者 WHERE 借阅.借书证号=读者.借书证号 ______ A、COUNT(借阅.借书证号) GROUP BY 单位 B、SUM(借阅.借书证号) GROUP BY 单位
C、COUNT(借阅.借书证号) ORDER BY 单位 D、COUNT(借阅.借书证号) HAVING 单位 26.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,检索借阅了《现代网络技术基础》一书的借书证号。 下面SQL语句正确的是______。
SELECT 借书证号 FROM 借阅 WHERE 总编号= ______
A、(SELECT 借书证号 FROM 图书 WHERE 书名=\"现代网络技术基础\") B、(SELECT 总编号 FROM 图书 WHERE 书名=\"现代网络技术基础\") C、(SELECT 借书证号 FROM 借阅 WHERE 书名=\"现代网络技术基础\") D、(SELECT 总编号 FROM 借阅 WHERE 书名=\"现代网络技术基础\") 27.Select 语句中用来连接字符串的符号是() (A)”+”
(B)”&”
(C)”||” (D)“|”
28. 已知关系学生(学号、姓名、年龄)如果按年龄从小到大排序列出所有学生并且相同年龄的学生按姓名升序排序。则排序命令是() A、ORDER BY 年龄,姓名
B、ORDER BY 姓名,年龄 DESC C、ORDER BY 年龄,DESC 姓名 D、ORDER BY 姓名,年龄 29.在删除基本表中某个列时,将以此表为参照表的关系中外键与主键相参照的列一起删除,应采用的方式是 ( )
A.RESSTRDICT方式 B.CASCADE方式 C.SET NULL方式 D.CHECK方式
30.Oracle中,下列说法正确的是() A.SQL语句不区分大小写 B.SQL语句不能分多行写
C.SQL语句的结束符是点号 D.SELECT语句不属于SQL语句
31.以下哪个SQL语句可以显示给员工加薪10%后的薪水() A.Select ename,sal*0.1 from emp; B.Select ename,sal+0.1 from emp; C.Select ename,sal+sal*0.1 from emp; D.Select ename,sal+sal*10% from emp;
32.Select trunc(21.456,2) from dual;的结果是() A.21.45 B.21.40 C.21.46 D.21.00
33.Select 中的”Group By”子句属于什么子句() A.条件 B.分组 C.排序
D不存在Group By子句
34.对于学生与班级的关系分析正确的是:
A.1:1的关系 B.1:N的关系 C.M:N的关系 D.以上都不正确
35.显示表结构的sql*plus的命令是() A.Desc B.Disp C.Output D.Struc
36. 按照SQL语言功能上的分类标准,以下语句
INSERT INTO Emp(fname, lname) VALUES(‘Tom’, ‘Smith’)属于()。(选择一项)A.DDL(数据定义语言) B.DML(数据操作语言) C.XML(扩展描述语言)
D.DCL(数据控制语言)
37.以下不属于Oracle数据库对象的有() A.表 B.默认值 C.索引 D.视图
38. Northwind数据库中有一张Customers表用于存放公司的客户信息,现在数据库管理员想通过使用一条SQL语句列出所有客户所在的城市,而且列出的条目中没有重复项,那么他可以在
SELECT City FROM Customers 语句中使用( )关键词。 A.TOP B.DISTINCT C.DESC D.ASC
39. 下表是Login表的相关信息 userName password first first second second
代码”select * from login where userName=’first’ “的执行结果是( ) A. first first second second B.second second C.first first D.first second
40. 在Northwind的Orders表中存放着公司的所有订单信息,其结构如下图所示:
现在公司的一名员工想查找没有填写送货邮政编码(ShipPostalCode)的记录,那么下列符合要求的SQL语句有()。
A. SELECT * FROM Orders WHERE ShipPostalCode IS NULL B. SELECT * FROM Orders WHERE ShipPostalCode = NULL C. SELECT * FROM Orders WHERE ShipPostalCode = ‘NULL’ D. SELECT * FROM Orders WHERE ShipPostalCode = ‘’
二:多选题(每题2分,共30分)
1. 关于order by 语句哪个描述是对的() A. 排列的列必须在select子句中。 B. 可以用别名排序。 C. 可以多列排序。 D. 只能对一列排序。
2. 关于VIEW的描述哪个是正确的() A. 视图可以简化查询的书写。 B. 视图可以限制对数据的访问。 C. 让不同的用户看到不同的数据。 D. 视图可以提高系统的性能。
3. 已知数据库的排序规则是默认设置。在northwind 数据库中有一个表order,表示所有定单的详情,该表中有一列quantity,表示定单中某产品的数量。你想实现按照产品数量从小到大排序来查询定单,使用order by 子句为()。 A. Select * from order Order by quantity desc B. Select * from order Order by quantity asc C. Select * from order Order by quantity
D. Select * from order Order by desc quantity
4.当一个用户修改了表的数据,那么 A.第二个用户不能立即看到数据的变化,
B.第二个用户必须执行ROLLBACK命令后才能看到数据的变化 C.第二个用户必须执行COMMIT命令后才能看到数据的变化 D.第二个用户因为会话不同,暂时不能看到数据的变化
5.对()的列上更适合创建索引。 A.需要对数据进行排序。 B.具有默认值。 C.频繁更改。
D.频繁搜索。
6.下面关于关系数据库中表的主键描述正确的是() A.使用主键可以唯一地标识表中的一行数据 B.主键的值可以为空值
C.能唯一标识一行记录的列只有主键 D.在一个表中主键列的值是唯一的 7.下面哪些是数据中事务的基本特征(ABCD) A.原子性 B.一致性 C.隔离性 D.永久性
8.关于子查询的描述正确的是() A.使用IN(或NOT IN)的子查询返回的查询结果是一列零值或更多值。子查询返回结果之后,外部查询可以使用这些结果。
B.使用EXISTS(或NOT EXISTS)关键字引入一个子查询时,就相当于进行一次存在测试。子查询产生查询结果集。
C. 使用EXISTS(或NOT EXISTS)关键字引入一个子查询时,子查询实际上不产生任何数据;它只返回TRUE或FALSE值。
D.子查询可由一个比较运算符引入。比较运算符可以是=,<>,>,<,>=,<=,!>,!<等。
9.建立外键时添加ON DELETE CASCADE 从句的作用是() A.删除子表的记录,主表相关记录一同删除 B.删除主表的记录,子表相关记录一同删除 C.子表相关记录存在,不能删除主表记录 D.主表相关记录存在,能够删除子表记录
10.下面关于表和视图的叙述中错误的是:() A.视图的数据不可以来自多个表 B.对视图的数据修改最终传递到基表 C.视图的数据可以来自多个表 D.删除视图会影响基表的数据
11.以下需要进行提交或回退的操作是() A.使用INSERT操作向表中插入记录 B.使用 UPDATE 修改表的记录 C.使用 DELETE 删除表的记录 D.使用 SELECT 查询表的记录
12.以下语句的作用是()
Select ename,sal FROM emp
WHERE sal<(SELECT min(sal) FROM emp)+1000;
A.显示工资高于最低工资,但它与最低工资的差值小于1000元的雇员信息 B.将雇员工资小于1000的工资增加1000后显示 C.显示超过最低工资1000元的雇员信息 D.显示不超过最低工资1000元的雇员信息
13.以下能表示员工在部门10中或部门20中任职的SQL语句是() A.Select job from emp where deptno =20 OR deptno=10; B.Select job from emp where deptno in(10,20);
C.select job from emp where deptno between 10 and 20; D.select job from emp where deptno=20 and deptno=10;
14.当用户创建表中的字段时,若该字段想用来保存字符串,应用哪些类型() A.char B.date C.number D.varchar2
15. 关于索引,说法错误的是() A.索引总是可以提高检索的效率 B.索引需要由用户自己来管理
C.创建表的主键和唯一键时会自动创建索引 D.删除索引会对拥有索引的表的数据产生影响
三:判断题(每题1分,共10分)
1.在列的取值重复率比较高的列上,适合创建唯一性索引。 2.可以使用currval来访问序列的下一个值。
3.Pl/SQL中select查询与在SQL/PLUS中用法相同。. 4.分组函数可以用来计算平均数,最值及统计数目等。 5.游标属于命名的PL/SQL块。
6.公共的子程序和常量应该在包主体中声明。
7.Select sysdate from dual;可以查询得到当前日期和时间。 8.在每一张表中都有一个列rownum,可以直接插入数据到rownum中 9.索引能提高查询效率,所以索引创建的越多越好。 10.触发器需要用户显示调用才能触发。
因篇幅问题不能全部显示,请点此查看更多更全内容