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

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

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

姓名: ____________________   日期: ____________

1.简单

在 WHERE 子句中,哪个运算符用于简单的文本模式匹配?

  1. ACONTAINS
  2. BMATCH
  3. CLIKE
  4. DSIMILAR
2.简单

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

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

CHECK 约束的作用是什么?

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

对于一行,WHERE EXISTS (subquery) 在什么情况下为真?

  1. A子查询返回一个大于零的数时
  2. B子查询恰好返回一行时
  3. C子查询至少返回一行时
  4. D子查询不返回 NULL 值时
5.中等

关于 HAVING,下列哪项说法正确?

  1. A它可以使用聚合函数来过滤分组
  2. B它不能与 GROUP BY 一起使用
  3. C它在 SELECT 语句中必须写在 WHERE 之前
  4. D它用于对结果排序
6.中等

一个外键声明了 ON DELETE CASCADE。删除父行时会发生什么?

  1. A删除总是被拒绝
  2. B引用它的子行会被自动删除
  3. C父行被复制到归档表中
  4. D子行中的外键自动被设为 NULL
7.困难

并发事务的调度在什么情况下被称为可串行化的?

  1. A任何事务都从不读取数据
  2. B每个事务都被分配一个序列号
  3. C事务只在一个 CPU 上运行
  4. D其效果等价于这些事务的某种串行执行
8.困难

FULL OUTER JOIN 返回什么?

  1. A两个表的所有行,能匹配的进行配对,否则以 NULL 填充
  2. B仅不匹配的行
  3. C笛卡尔积,即一个表的每一行与另一个表的每一行两两配对
  4. D仅匹配的行

答案

  1. 1. C · LIKE
  2. 2. D · 任意零个或多个字符组成的序列
  3. 3. C · 拒绝值不满足某个条件的行
  4. 4. C · 子查询至少返回一行时
  5. 5. A · 它可以使用聚合函数来过滤分组
  6. 6. B · 引用它的子行会被自动删除
  7. 7. D · 其效果等价于这些事务的某种串行执行
  8. 8. A · 两个表的所有行,能匹配的进行配对,否则以 NULL 填充

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