Oracle 9i SQL入门试题与解析

需积分: 15 9 下载量 44 浏览量 更新于2024-07-31 收藏 832KB PDF 举报
"该资源为最新的Oracle考试题库,涵盖了Oracle 9i SQL的基础知识,包括数据插入操作和SQL函数的使用。" 在Oracle数据库管理中,了解如何正确地进行数据插入是至关重要的。在提供的题目中,提到了对EMPLOYEE表的结构分析,该表有三个字段:EMPLOYEE_ID(主键,NUMBER类型)、FIRST_NAME(VARCHAR2(25))和LAST_NAME(VARCHAR2(25))。题目询问了哪些SQL语句能成功插入一行数据。以下是选项的解析: A. INSERT INTO employees VALUES (NULL, 'John', 'Smith'); - 错误,因为EMPLOYEE_ID是主键,不能为NULL。 B. INSERT INTO employees (first_name, last_name) VALUES ('John', 'Smith'); - 错误,没有指定EMPLOYEE_ID,而它是主键,不允许为空。 C. INSERT INTO employees VALUES ('1000', 'John', NULL); - 正确,尽管不推荐在NULL允许的情况下省略字段,但LAST_NAME可以是NULL。 D. INSERT INTO employees (first_name, last_name, employee_id) VALUES (1000, 'John', 'Smith'); - 错误,'Smith'不是一个数字,不能赋值给EMPLOYEE_ID。 E. INSERT INTO employees (employee_id) VALUES (1000); - 错误,只指定了主键,没有指定其他字段。 F. INSERT INTO employees (employee_id, first_name, last_name) VALUES (1000, 'John', ''); - 正确,尽管不推荐使用空字符串,LAST_NAME字段可以为空。 因此,正确答案是C、E、F。 接下来的题目考察了SQL中的ROUND和TRUNC函数。ROUND函数用于四舍五入,而TRUNC函数用于截断小数位。题目中的SQL语句是:SELECT ROUND(45.953, -1), TRUNC(45.936, 2) FROM dual。ROUND函数将45.953向最近的整数50四舍五入,TRUNC函数将45.936的小数部分截断至两位,即45.93。所以显示的结果应该是: A. 46 and 45 - 错误,ROUND的四舍五入结果不是46。 B. 46 and 45.93 - 正确,这是ROUND和TRUNC的正确结果。 C. 50 and 45.93 - 错误,ROUND不会得到50。 D. 50 and 45.9 - 错误,ROUND不会得到50。 E. 45 and 45.93 - 错误,ROUND的结果不是45。 F. 45.95 and 45.93 - 错误,ROUND的结果不是45.95。 正确答案是B。 最后,题目还涉及了DML(Data Manipulation Language,数据操纵语言)语句,包括对数据库中数据的增删改查操作。提供的选项中: A. COMMIT - 正确,用于提交事务。 B. MERGE - 正确,用于合并数据到一个表。 C. UPDATE - 正确,用于更新现有记录。 D. DELETE - 正确,用于删除记录。 E. CREATE - 错误,这是DDL(Data Definition Language,数据定义语言),用于创建数据库对象。 F. DROP - 错误,也是DDL,用于删除数据库对象。 所以,正确的DML语句选择是A、B、C、D。 总结起来,这个Oracle题库涉及到的关键知识点包括: 1. 数据插入操作,特别是关于主键和字段值的限制。 2. SQL函数ROUND和TRUNC的使用,理解它们在数值处理中的作用。 3. DML语句的理解,包括COMMIT、MERGE、UPDATE和DELETE,以及DDL语句CREATE和DROP的区别。