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

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

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

姓名: ____________________   日期: ____________

1.简单

在 LIKE 模式中,通配符 % 代表什么?

  1. A任意一个数字
  2. B字符串的结尾
  3. C任意零个或多个字符组成的序列
  4. D字符串该位置上恰好一个字符
2.简单

哪条 SQL 语句修改已存在的行中的值?

  1. AMODIFY
  2. BREPLACE COLUMN
  3. CINSERT
  4. DUPDATE
3.简单

CHECK 约束的作用是什么?

  1. A验证用户的密码
  2. B统计表中的行数
  3. C在对某个表执行查询之前检查该表是否存在
  4. D拒绝值不满足某个条件的行
4.中等

为什么一个表只能有一个聚集索引?

  1. ASQL 标准禁止一个表上有多个索引
  2. B聚集索引占用太多内存
  3. C聚集索引只能建在主键上
  4. D行在物理上只能按一种顺序存储
5.中等

哪个查询返回每个部门的最高工资?

  1. ASELECT MAX(dept), salary FROM emp GROUP BY salary
  2. BSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  3. CSELECT dept, MAX(salary) FROM emp ORDER BY dept
  4. DSELECT dept, MAX(salary) FROM emp GROUP BY dept
6.中等

哪个 ACID 特性意味着并发事务看不到彼此尚未完成的更改?

  1. A原子性
  2. B隔离性
  3. C可用性
  4. D持久性
7.困难

与 3NF 相比,把表分解为 BCNF 的一个已知缺点是什么?

  1. ABCNF 比 3NF 允许更多冗余
  2. BBCNF 表不能有主键
  3. C分解后再连接回来总会丢失数据
  4. D某些函数依赖可能无法再在单个表中检查
8.困难

下列查询返回什么:SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)?

  1. A成绩高于平均成绩的学生
  2. B报错,因为 WHERE 中不允许使用子查询
  3. C所有学生的平均成绩
  4. D仅成绩最高的学生

答案

  1. 1. C · 任意零个或多个字符组成的序列
  2. 2. D · UPDATE
  3. 3. D · 拒绝值不满足某个条件的行
  4. 4. D · 行在物理上只能按一种顺序存储
  5. 5. D · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  6. 6. B · 隔离性
  7. 7. D · 某些函数依赖可能无法再在单个表中检查
  8. 8. A · 成绩高于平均成绩的学生

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