题目
如果A表的m列参照了B表的n列,则n列在B表中会有什么特征?A. n 必定是主码B. n 必定不是主码C. n 可以为任意列D. n 必定和 m 列同名
如果A表的m列参照了B表的n列,则n列在B表中会有什么特征?
A. n 必定是主码
B. n 必定不是主码
C. n 可以为任意列
D. n 必定和 m 列同名
题目解答
答案
A. n 必定是主码
解析
考查要点:本题主要考查数据库中参照完整性的基本概念,特别是主码与外码的关系。
解题核心思路:
在参照完整性中,外码必须引用另一个表的主码。因此,当A表的某列(外码)参照B表的某列时,被参照的列必须是B表的主码,以保证数据的唯一性和一致性。
关键点:
- 主码的唯一性:主码列的值必须唯一且不能为空。
- 外码的引用规则:外码只能引用主码,不能引用非主码列。
根据参照完整性规则:
- 外码的定义:A表的m列作为外码,其作用是引用其他表的主码。
- 被引用列的性质:B表的n列被m列引用,说明n列必须是B表的主码。
- 选项分析:
- A. n必定是主码:正确,因为外码必须引用主码。
- B. n必定不是主码:错误,若n不是主码,则无法被外码合法引用。
- C. n可以为任意列:错误,非主码列不能作为外码的引用目标。
- D. n必定和m列同名:错误,外码与主码的列名可以不同,只要数据类型匹配。