1.简单
外键(foreign key)是:
- A其值在表的所有行中都必须唯一的列
- B外国用户使用的键
- C引用另一个表主键的列
- D始终加密的键
2.简单
什么是主键(primary key)?
- A可以包含重复值但绝不能包含 NULL 的列
- B数据库的密码
- C每个表的第一列
- D唯一标识每一行的一列或一组列
3.简单
哪条 SQL 语句修改已存在的行中的值?
- AMODIFY
- BINSERT
- CUPDATE
- DREPLACE COLUMN
4.中等
对于一行,WHERE EXISTS (subquery) 在什么情况下为真?
- A子查询恰好返回一行时
- B子查询返回一个大于零的数时
- C子查询不返回 NULL 值时
- D子查询至少返回一行时
5.中等
关于 HAVING,下列哪项说法正确?
- A它可以使用聚合函数来过滤分组
- B它不能与 GROUP BY 一起使用
- C它在 SELECT 语句中必须写在 WHERE 之前
- D它用于对结果排序
6.中等
哪个 ACID 特性保证已提交的更改在系统崩溃后仍然存在?
- A原子性
- B隔离性
- C持久性
- D一致性
7.困难
R(A, B, C, D) 有函数依赖 A → B 和 C → D。候选键是什么?
- A{B, D}
- B{C}
- C{A, C}
- D{A}
8.困难
为什么在标准 SQL 中 SELECT dept, name, COUNT(*) FROM emp GROUP BY dept 是无效的?
- AGROUP BY 必须列出表的所有列
- BCOUNT(*) 不能与 GROUP BY 一起使用
- Cdept 必须出现在聚合函数中
- Dname 既没有分组也没有聚合,因此每组没有唯一的值
答案
- 1. C · 引用另一个表主键的列
- 2. D · 唯一标识每一行的一列或一组列
- 3. C · UPDATE
- 4. D · 子查询至少返回一行时
- 5. A · 它可以使用聚合函数来过滤分组
- 6. C · 持久性
- 7. C · {A, C}
- 8. D · name 既没有分组也没有聚合,因此每组没有唯一的值
完整分步解答:请在 examproblems.com 上练习本主题。