oracle测试试卷
需积分: 0 127 浏览量
更新于2012-03-25
收藏 62KB DOC 举报
根据提供的信息,我们可以详细解析这份Oracle数据库相关的考试试卷中涉及的关键知识点。
### 一、选择题解析
#### 1. SQL*Plus中的命令
- **题目:** 在SQL*plus中,想要执行缓存区的语句,使用以下哪个命令?
- **答案:** B (/)
- **解析:** 在SQL*Plus环境中,`/` 命令用于执行已编辑的SQL语句或脚本。`c`、`l` 和 `get` 分别用于其他不同的功能。
#### 2. Oracle中的数据类型
- **题目:** 以下不属于oracle中的数据类型的是?
- **答案:** D (String)
- **解析:** Oracle支持多种数据类型,如 `NUMBER`、`VARCHAR2` (而非 `VARCHAR`)、`DATE` 等。`STRING` 不是Oracle的标准数据类型之一,通常被 `VARCHAR2` 或 `CHAR` 所代替。
#### 3. 去除重复值的关键字
- **题目:** oracle中去掉重复值使用以下哪个关键字?
- **答案:** C (DISTINCT)
- **解析:** `DISTINCT` 关键字用于从查询结果中去除重复行,确保每一行都是唯一的。
#### 4. 使用LIKE进行模糊匹配
- **题目:** 执行语句`SELECT name FROM Student WHERE name LIKE '_a%'`,哪些name会被显示?
- **答案:** B (以"a"为第二个字母的)
- **解析:** `_a%` 表示任何以"a"为第二个字符的字符串。例如,"ba", "ca", "da" 等都将被匹配。
#### 5. 字符串长度的查询
- **题目:** oracle中获取字符串"123123"长度的语句正确的是?
- **答案:** B (`SELECT LENGTH('123123') FROM dual`)
- **解析:** `LENGTH` 函数用于计算字符串的字符数。在Oracle中,`dual` 是一个特殊表,用于简单的查询,如这个例子中的字符串长度查询。
#### 6. 求最大值的函数
- **题目:** 以下那条语句是求最大值?
- **答案:** A (`SELECT MAX(book_price) FROM tb_book`)
- **解析:** `MAX()` 函数用于返回指定列的最大值。
#### 7. 表的操作
- **题目:** 下列操作表XXXX的语句中,正确的是?
- **答案:** D (`UPDATE XXXX SET 字段名称 = 值 WHERE 条件`)
- **解析:** 此选项表示更新表中的数据,其中包含了正确的语法结构。
#### 8. 连接字符串的符号
- **题目:** Select语句中用来连接字符串的符号是?
- **答案:** C (`||`)
- **解析:** 在Oracle中,`||` 符号用于连接两个字符串。
#### 9. 字符转大写的函数
- **题目:** oracle中将字符转换成大写的语句,以下方法正确的是?
- **答案:** C (`UPPER('abc')`)
- **解析:** `UPPER()` 函数用于将字符串中的所有字符转换为大写形式。
#### 10. 格式化日期
- **题目:** 如果你想将系统时间以格式2011/10/10显示,你使用以下哪个语句?
- **答案:** D (`SELECT TO_CHAR(SYSDATE, 'YYYY/MM/DD') FROM dual`)
- **解析:** `TO_CHAR()` 函数用于将日期转换为指定格式的字符串。
### 二、填空题解析
#### 1. 获取系统当前时间
- **答案:** `SYSDATE`, `CURRENT_DATE`
- **解析:** `SYSDATE` 和 `CURRENT_DATE` 都可用于获取当前系统日期和时间。
#### 2. 字符串转整数
- **答案:** `Integer.parseInt("123")`
- **解析:** Java中使用 `Integer.parseInt()` 方法可以将字符串转换为整数。
#### 3. PL/SQL块
- **答案:**
```sql
DECLARE
total NUMBER := 0;
BEGIN
FOR i IN 1..10 LOOP
total := total + i;
END LOOP;
DBMS_OUTPUT.PUT_LINE(total);
END;
```
- **解析:** 上述PL/SQL块通过循环计算从1加到10的和,并使用 `DBMS_OUTPUT.PUT_LINE` 输出结果。
### 三、问答题解析
#### 1. TRUNCATE与DELETE的区别
- **解析:** `TRUNCATE TABLE` 和 `DELETE` 都可以删除表中的所有数据,但是 `TRUNCATE TABLE` 的执行速度更快,因为它不记录删除行为的日志。此外,`TRUNCATE TABLE` 会释放存储表数据的空间,而 `DELETE` 不会。需要注意的是,`TRUNCATE TABLE` 不支持 `WHERE` 子句,只能删除整个表的数据。
#### 2. CHAR与VARCHAR数据类型的区别
- **解析:** `CHAR` 类型定义了固定长度的字符串,最多可达2000个字符;而 `VARCHAR2` 类型定义了可变长度的字符串。`CHAR` 类型在未满定长的情况下会在字符串末尾填充空格,而 `VARCHAR2` 类型不会。在实际应用中,如果字符串长度不确定,推荐使用 `VARCHAR2` 类型。