数据库与 SQL练习卷(附答案)

免费可打印的数据库与 SQL练习卷:8 道题,从简单到考试水平,附答案。可打印或另存为 PDF。

教师请注意: 可免费打印、复印并在课堂上使用。每份新练习题都有新的数值和独立的答案。欢迎在课程页面添加指向 ExamProblems 的链接。

姓名: ____________________   日期: ____________

1.简单

哪条语句向已有的表中添加新列?

  1. AALTER TABLE
  2. BUPDATE TABLE
  3. CINSERT COLUMN
  4. DCREATE COLUMN
2.简单

什么是复合键?

  1. A由两列或更多列组成的键
  2. B允许重复值的键
  3. C存储在单独表中的键
  4. D由数据库生成的键
3.简单

UNION ALL 与 UNION 有何不同?

  1. AUNION ALL 去除重复行
  2. BUNION ALL 保留重复行
  3. CUNION ALL 会对结果排序
  4. DUNION ALL 只适用于一个表
4.中等

什么是脏读?

  1. A两次读取同一行并得到相同的值
  2. B不带 WHERE 子句读取数据
  3. C从损坏的磁盘读取数据
  4. D读取另一个尚未提交的事务所写入的数据
5.中等

哪个查询返回 customers 表中不同城市的数量?

  1. ASELECT COUNT(DISTINCT city) FROM customers
  2. BSELECT SUM(DISTINCT city) FROM customers
  3. CSELECT DISTINCT COUNT(city) FROM customers
  4. DSELECT COUNT(city) FROM customers GROUP BY city
6.中等

ACID 中的 "A" 代表什么?

  1. A准确性(Accuracy)
  2. B原子性(Atomicity)
  3. C可用性(Availability)
  4. D聚合性(Aggregation)
7.困难

把 R 分解为 R1 和 R2 在什么情况下保证是无损的?

  1. AR 的每个属性都同时出现在 R1 和 R2 中时
  2. BR1 和 R2 没有公共属性时
  3. CR1 和 R2 的公共属性构成 R1 或 R2 的超键时
  4. DR1 和 R2 的列数相同时
8.困难

要在深度未知的组织树中找出某位经理下属的所有员工,哪种 SQL 功能最合适?

  1. A递归公用表表达式(WITH RECURSIVE)
  2. B基于 manager_id 对 employees 表做一次自连接
  3. C对 manager_id 进行 GROUP BY
  4. D在 manager_id 上加 UNIQUE 约束

答案

  1. 1. A · ALTER TABLE
  2. 2. A · 由两列或更多列组成的键
  3. 3. B · UNION ALL 保留重复行
  4. 4. D · 读取另一个尚未提交的事务所写入的数据
  5. 5. A · SELECT COUNT(DISTINCT city) FROM customers
  6. 6. B · 原子性(Atomicity)
  7. 7. C · R1 和 R2 的公共属性构成 R1 或 R2 的超键时
  8. 8. A · 递归公用表表达式(WITH RECURSIVE)

完整分步解答:请在 examproblems.com 上练习本主题。