tmobst5an
- * 1.(单选题)SQL语言又称为()
- A)结构化定义语言
- B)结构化控制语言
- C)结构化查询语言
- D)结构化操纵语言
- 解析:SQL语言又称为结构化查询语言
- * 2.(单选题)只有满足联接条件的记录才包含在查询结果中,这种联接为( )
- A)左联接
- B)右联接
- C)内部联接
- D)完全联接
- 正确答案为:C
解析:内连接 :内连接查询操作列出与连接条件匹配的数据行 外连接:返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左连接)、右表(右 连接)或两个边接表(全外连接)中的所有数据行。
- * 3.(单选题)Oracle 数据库中,在 SQL 语句中连接字符串的方法是哪个( )
- A)cat
- B)concat
- C)join
- D)+
- 解析:Oracle中使用concat连接字符串
- * 4.(单选题)下列哪个集合操作符返回两个查询所选择的所有的行( )
- A)union
- B)unionall
- C)union only
- D)connect by
- 正确答案为:B
解析:union集合操作符返回两个查询所选择的去除重复行。
- * 5.(单选题)查询cost表的所有行,所有列,下列sql语句正确的是:
- A)select * from cost;
- B)select all.* from cost;
- C)select all from cost;
- D)select \* from cost;
- 解析:select * from 表名 是查询此表的所有行和所有列
- * 6.(单选题)SQL 语言中修改表结构的命令是( )
- A)MODIFY TABLE
- B)MODIFY STRUCTURE
- C)ALTER TABLE
- D)ALTER STRUCTURE
- 解析:修改表结构使用alter命令
- * 7.(单选题)在Oracle中,删除表Student中的所有数据,可以使用的Sql是()。
- A)DROP TABLE Student
- B)DELETE FROM Student
- C)DELETE * FROM Student
- D)DROP * FROM Student
- 正确答案为:B
解析:drop会将表结构一并删除,且删除表数据不可以使用*号
- * 8.(单选题)表 CLASSES 和 表 SCHEDULE 结构如下: CLASSES: ID NUMBER(9) CLASS_NAME VARCHAR2(20) TEACHER_ID NUMBER(9) SCHEDULE: CLASS_TIME DATE CLASS_ID NUMBER(9) 建一个视图显示每一门课程的课名、课时,并按教师 ID 排序,判断下面语句将返回何种结果( ) CREATE VIEW class_schedule AS SELECT c.class_name, s.class_time FROM classes c, schedule s WHERE c.id = s.class_id;
- A)语句创建视图 CLASS_SCHEDULE 且可产生预期结果
- B)语句创建视图 CLASS_SCHEDULE 但不能产生预期结果
- C)语法错误,因为视图不可基于连接查询
- D)语法错,因为语句未包含 ORDER BY 子句
- 正确答案为:B
解析:上述视图显示每一课的课名、课时,但是没有按教师 ID 排序
- * 9.(单选题)有如下 SQL 片段: delete from asdfh a where a.kaihrq > '20091214' and a.jiluzt <> '1'; 其含义为( )
- A)从表 asdfh 中删除 kaihrq 大于 2009 年 12 月 14 日,且 jiluzt 不为 1 的记录
- B)从表 asdfh 中删除 kaihrq 和 jiluzt 列
- C)对表 asdfh 中删除 kaihrq 大于 2009 年 12 月 14 日,且 jiluzt 不为 1 的记录做一个删除标记
- D)以上都不正确
- 正确答案为:C
解析:提交或回滚前的数据状态改变前的数据状态是可以恢复的 执行 DML 操作的用户可以通过 SELECT 语句查询之前的修正 其他会话不能看到当前用户所做的改变,直到当前会话结束事务。 DML 语句所涉及到的行被锁定, 其他会话不能操作。
- * 10.(单选题)Oracle 数据库表空间与数据文件的关系描述正确的是( )
- A)一个表空间只能对应一个数据文件
- B)一个表空间可以对应多个数据文件
- C)一个数据文件可以对应多个表空间
- D)表空间与数据文件没任何对应关系
- 解析:表空间和数据文件发生关系,数据文件是物理的,一个表空间可以包含多个数据文件, 而一个数据文件只能隶属一个表空间
- * 11.(单选题)表 TEACHER 包含如下字段: 列名 可为空否? 数据类型 TEACHER_ID NOT NULL NUMBER(9) NAME VARCHAR2(25) SALARY NUMBER(7,2) SUBJECT_ID NOT NULL NUMBER(4) SUBJECT_DESCRIPTION VARCHAR2(20) 你需要将SUBJECT_ID是11的理科(SCIENCE)教师的工资上浮8%, 需用哪一句实现( )
- A)UPDATE teacher SET salary = salary * 1.08 WHERE subject_description LIKE 'SCIENCE';
- B)UPDATE teacher SET salary = salary * 0.8 WHERE subject_description LIKE 'SCIENCE' AND subject_id = 11;
- C)UPDATE teacher SET salary = salary * 1.08 WHERE subject_id = 11;
- D)UPDATE teacher SET salary = salary + (salary * 0.08) WHERE subject_description LIKE 'SCIENCE' OR subject_id = 11;
- 解析:A. 是将所有理科教师的工资都上浮8% B. 是将SUBJECT_ID是11的理科(SCIENCE)教师的原有工资改成了 原来的0.8倍 D. 与A的效果相同
- * 12.(单选题)Oracle 数据库表空间与用户的关系是( )
- A)一对一
- B)一对多
- C)多对一
- D)多对多
- 正确答案为:D
解析:一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。
- * 13.(单选题)试图用下面句子查询数据:SELECT 100/NVL(quantity, 0) FROM inventory; 为何 QUANTITY 为 null 空值时,将导致出错( )
- A)表达式企图被空值除
- B)换函数参数数据类型不一致
- C)空值不能被转成实际值
- D)表达式企图被零除
- 正确答案为:D
解析:nvl(表达式1,表达式2)这个函数的作用是如果表达式1的值为null,那么取表达式2的值。
- * 14.(单选题)哪一子句可实现 SELECT 语句查询员工平均工资小于 5000 的部门 信息( )
- A)GROUP BY dept_id WHERE AVG(sal) < 5000;
- B)GROUP BY AVG(sal) HAVING AVG(sal) < 5000
- C)GROUP BY dept_id HAVING AVG(sal) < 5000
- D)GROUP BY AVG(sal) < 5000
- 正确答案为:C
解析:使用 HAVING 过滤分组。
- * 15.(单选题)select 语句中用来连接字符串的符号是( )
- A)"+"
- B)"&"
- C)"||"
- D)"|"
- 解析:Oracle中连接字符串使用"||"符号
- * 16.(单选题)判断下面句子,将返回什么值( ) SELECT id_number, description, price FROM inventory WHERE manufacturer_id IN ( SELECT manufacturer_id FROM inventory WHERE price > 8.00 OR quantity > 1000 );
- A)返回单价大于 8.00 且数量大于1000的存货的货号、种类、单价信息
- B)返回单价大于 8.00 或者数量大于1000的存货的货号、种类、单价信息
- C)返回单价大于8.00或者数量大于1000且有制造商号的存货的货号、种类、单价信息
- D)返回单价大于8.00或者数量大于1000的制造商的所有存货的货号、种类、单价信息
- 解析:该语句返回的是单价大于8.00或者数量大于1000,且制造商号在子查询结果集中的存货的货号、种类、单价的信息
- * 17.(单选题)在数据库中,有一个名为seq的序列对象,以下语句能返回下一个序列值的是:
- A)select seq.ROWNUM from dual;
- B)select seq.ROWID from dual;
- C)select seq.CURRVAL from dual;
- D)select seq.NEXTVAL from dual;
- 解析:.NEXTVAL是获取下一个序列值
- * 18.(单选题)在oracle中,判断一条记录的某个列是否为NULL,应该使用( )。
- A)!=
- B)<>
- C)IS
- D)=
- 解析:Oracle中通过is关键字判断字段值是否为NULL
- * 19.(单选题)表(TEACHER)包含以下列: ID NUMBER(7) PK SALARY NUMBER(7,2) SUBJECT_ID NUMBER(7) 判断以下两个 SQL 语句: (1)SELECT ROUND(SUM(salary),-2) FROM teacher ; (2)SELECT subject_id, ROUND(SUM(salary),-2) FROM teacher GROUP BY subject_id ; 有什么不同结果( )
- A)语句 1 将返回每个老师一个结果
- B)语句 2 将返回多个结果
- C)结果相同,显示不同
- D)将有一个句子产生错误
- 正确答案为:B
解析:语句 1 会返回一个结果,就是所有老师的工资和,使用了四舍五入函数,语句 2 是按照 subject_id 进行分组,那么分几组就会有几个结果
- * 20.(多选题)which are DML statements( )
- A)truncate
- B)insert
- C)update
- D)delete
- 解析:DML:data manipulation language 数据操作语言: insert delete update merge DDL:data definition language 数据定义语言: create alter drop DCL:data control language 数据控制语言: grant revoke truncate属于DDL语句