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

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

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

姓名: ____________________   日期: ____________

1.简单

一个客户可以下很多订单,但每个订单只属于一个客户。这是哪种联系?

  1. A多对多
  2. B一对多
  3. C零对零
  4. D一对一
2.简单

实体-联系(ER)图用于什么?

  1. A列出数据库的用户
  2. B测量数据库性能
  3. C在设计数据库时为实体、实体的属性及其联系建模
  4. D显示查询是如何执行的
3.简单

哪条语句用于从表中删除行?

  1. ATRUNCATE COLUMN
  2. BDELETE
  3. CREMOVE
  4. DDROP
4.中等

哪条语句删除表中的所有行、保留其结构,并且不能带 WHERE 子句?

  1. ADROP TABLE
  2. BTRUNCATE TABLE
  3. C带 WHERE 子句的 DELETE FROM
  4. DALTER TABLE
5.中等

第三范式(3NF)消除了:

  1. A非键属性之间的传递依赖
  2. B原子值
  3. C复合键
  4. D建立在不属于任何键的列上的冗余索引
6.中等

一个表中有些行的 col 为 NULL。WHERE col = NULL 返回哪些行?

  1. A返回表中的所有行
  2. B不返回任何行,因为比较结果是未知
  3. C只返回 col 为 NULL 的行,与 IS NULL 相同
  4. D在每种数据库中都报错
7.困难

如果 col 中所有值都是 NULL 且表有 10 行,SELECT COUNT(col) FROM t 的结果是什么?

  1. ANULL
  2. B报错
  3. C0
  4. D10
8.困难

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

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

答案

  1. 1. B · 一对多
  2. 2. C · 在设计数据库时为实体、实体的属性及其联系建模
  3. 3. B · DELETE
  4. 4. B · TRUNCATE TABLE
  5. 5. A · 非键属性之间的传递依赖
  6. 6. B · 不返回任何行,因为比较结果是未知
  7. 7. C · 0
  8. 8. D · 成绩高于平均成绩的学生

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