数据库三维知识体系:抽象层、约束层与操作层深度解析

📅 发布时间:2026/10/19 2:25:53
数据库三维知识体系:抽象层、约束层与操作层深度解析
简介本资源为中南大学数据库课程期末考试真题试卷及配套复习纲要面向计算机及相关专业本科生、考研备考学生及数据库初学者旨在系统梳理数据库核心理论与应试要点。压缩包内含1个DOC格式文档164KB完整覆盖数据库概述、ER模型、关系模型、SQL语言、数据库保护、规范化理论及应用设计六大模块包含选择题、填空题、术语解释与简答题四类典型题型共30余道并附详细知识点索引与复习提纲。内容紧扣教学大纲突出三级模式结构、ACID事务、并发控制、函数依赖与范式转化等高频考点题干设计规范答案逻辑清晰便于自测巩固与考前冲刺。目前已有355人学习下载是掌握数据库原理、提升解题能力与应对高校数据库类考试的实用参考资料。1. 这不是一份“题库”而是一张数据库知识的三维导航图从抽象层次到操作语义从理论异常到SQL落地如果你正在系统复习数据库或刚啃完《数据库系统概论》前六章却感觉知识点像散落的珠子——这很正常。中南大学这份试题集之所以被反复传阅正因为它无意中构建了一条极清晰的「认知锚线」所有考点都严格对应数据库知识体系的三个垂直维度——抽象层模式/映射/模型、约束层完整性/范式/事务、操作层SQL/代数/并发。它不考偏题怪题但每道选择题都在逼你确认这个概念到底落在哪一层比如第1套卷单选第1题问“数据库系统的体系结构”表面考三级模式实则在检验你是否真正理解「外模式→模式→内模式」这条映射链如何同时支撑逻辑独立性与物理独立性再如第2套卷填空第7题“DB并发操作带来的三类问题”答案是“丢失更新、不可重复读、读脏数据”但若只背结论遇到第3套卷问答题第4问“数据依赖对关系模式的影响”就无法把“部分函数依赖→插入异常→2NF改造”这条因果链串起来。这份资料最珍贵的不是答案本身而是它用29页试卷标准答案把教科书里扁平的知识点压成了可触摸的立体结构——模式是骨架约束是神经操作是肌肉。适合两类人一类是正在搭建知识框架的初学者需要一张能标注“这里易错”“此处必考”的地图另一类是临考前查漏补缺者需要快速定位自己卡在哪个维度——是抽象层没想透比如分不清“模式”和“外模式”的边界还是约束层没吃透比如3NF和BCNF的判定条件总混淆抑或操作层不熟练比如写不出“选修全部课程”的嵌套NOT EXISTS。接下来我们就按这三层结构把29页试卷里埋藏的57个核心考点、12处高频易错陷阱、8类必须手写的SQL模板全部摊开、归位、标红。2. 抽象层三级模式与数据模型——为什么“模式映射”是数据库独立性的唯一支点数据库的抽象能力是它区别于文件系统的核心。这份试题集从CH1开始就牢牢抓住这个本质所有关于“DBMS引入意义”“三级模式结构”“ER模型 vs 关系模型”的题目都不是孤立概念而是在反复验证一个底层逻辑——数据独立性必须通过分层映射来实现。没有映射分层就是纸糊的没有分层映射就失去对象。我们拆解试卷中所有相关考点还原其技术实质。2.1 三级模式不是三个名词而是两组映射定义的两种独立性试卷中反复出现的“三级模式结构”如第1套单选第1题、第2套单选第4题、第3套填空第2题常被简化为“外模式-模式-内模式”三个名词。但真正决定考试成败的是能否说清这两组映射各自保障什么映射类型定义位置保障的独立性典型考题场景为什么容易错外模式/模式映射DBA创建外模式时定义逻辑独立性当全局逻辑结构模式改变时用户程序基于外模式无需修改第1套单选第7题“要保证数据库物理数据独立性需要修改的是”——正确答案是B模式与内模式的映射而非C模式与外模式的映射混淆“逻辑”与“物理”误以为用户视图变化才需改映射其实用户视图外模式变改的是外模式本身而模式变才需调外模式/模式映射来屏蔽变化模式/内模式映射DBA设计存储结构时定义物理独立性当数据物理存储方式内模式改变时全局逻辑结构模式保持不变第4套填空第7题“当数据的存储结构改变时…称之为数据的______”——答案是“物理独立性”其技术基础正是模式/内模式映射将“存储结构改变”等同于“数据库迁移”忽略映射的本质是逻辑描述模式与物理实现内模式的解耦接口提示所有关于“独立性”的题目答案必与映射直接相关。若选项中出现“修改模式”“修改外模式”等表述基本是干扰项——独立性靠映射保障而非修改模式本身。2.2 数据模型ER模型是“画布”关系模型是“代码”二者不可互换试卷CH2ER模型与CH3关系模型的对比题如第1套单选第10题、第2套单选第13题暴露出一个普遍误区把ER图当作数据库的“高级形态”。实际上ER模型是概念设计阶段的沟通工具关系模型才是DBMS执行的机器语言。二者关系不是升级而是翻译ER模型三要素实体、属性、联系解决“世界是什么”第1套填空第2题“实现概念模型最常用的表示方法是_E-R图__”强调其作为信息模型的定位——它不关心主键怎么建、索引怎么设只描述“学生有学号、姓名与课程存在选修关系”。关系模型三要素关系、完整性约束、关系运算解决“机器怎么存”第1套简答第2题“关系的实体完整性规则”直指关系模型的执行铁律——主码非空且唯一这是DBMS强制校验的底线不是ER图里画个“主键”符号就能替代的。这种分工在试题中体现为严格的场景隔离凡涉及“设计”“概念”“E-R图转换”如第2套单选第7题、第3套问答第5题答案必选ER或概念模型凡涉及“查询”“约束”“规范化”如第1套应用题、第2套应用题答案必落回关系模型。2.3 数据库系统DBS相关概念辨析四个缩写不是并列关系而是包含关系试卷CH1第4点DB/DBMS/DBS/DBAS及第1套单选第8题、第3套单选第1题专门考查概念层级。常见错误是把它们当成同级术语罗列。梳理其真实关系DBDatabase纯粹的数据集合如“学生表、课程表”这些磁盘上的文件。DBMSDatabase Management System管理DB的软件如MySQL、Oracle提供DDL/DML/DCL功能。DBSDatabase SystemDB DBMS 硬件 DBA 用户的完整运行体。第3套单选第2题“数据库系统包括…”正确答案必须包含“各类相关人员”。DBASDatabase Application System基于DBS开发的具体应用如教务系统、银行系统。它依赖DBS但不是DBS的组成部分。注意第1套单选第8题“不属于数据库特点的是”选项D“数据独立性低”是典型反向干扰——数据库的核心特点恰恰是高数据独立性这正是三级模式的价值所在。3. 约束层完整性、范式与事务——为什么“约束”不是限制而是数据健康的免疫系统如果说抽象层定义了数据库的“形”那么约束层就决定了它的“质”。试卷CH3完整性约束、CH6规范化理论、CH5数据库保护三大板块共同构成数据库的健康免疫系统完整性是日常体检范式是基因优化事务是危重抢救。所有失分点几乎都源于将约束视为“DBMS强加的麻烦”而非保障数据可信的基础设施。3.1 完整性约束四类约束各司其职外键是“关系”的法律凭证试卷CH3第2点明确列出完整性约束的层次表内域、主键、唯一性与表间外键、触发器。第1套填空第8题、第2套填空第10题、第3套填空第8题均聚焦于此。关键在于理解每类约束的技术含义与适用场景域约束Domain Constraint字段取值范围如年龄 INT CHECK(年龄 BETWEEN 0 AND 150)。试卷虽未直接考语法但在应用题如第1套综合题第1题中隐含此逻辑——查询“年龄18到22之间”前提是年龄字段已定义合理域。主键Primary Key与唯一性Unique第1套单选第6题“借阅关系的码”答案C“书号读者号”即主键第4套填空第3题“外关键字”定义指向唯一性约束的延伸。二者核心区别主键不允许NULL唯一性允许NULL但仅一个。这是SQL笔试高频踩坑点。外键Foreign Key试卷CH3明确指出其用于“表间完整性维护”第2套填空第10题“参照完整性规则是定义__参照关系__与__被参照关系__之间的引用规则”。其技术本质是强制参照关系中的外码值必须存在于被参照关系的主码值中。第1套综合题第4题“查询选修‘数据库原理’的学生”其子查询Select 课程号 From 课程 Where 课程名’数据库原理’正是外键约束的逆向应用——用被参照表课程的主码去匹配参照表选课的外码。3.2 规范化理论范式不是目标而是消除异常的手术刀CH6是试卷中最易失分的理论板块。第1套填空第8题、第2套单选第13题、第3套问答第2题全在考查对“异常-依赖-范式”链条的理解。核心逻辑是异常是症状函数依赖是病因范式是手术方案。四类异常第1套填空第8题答案数据冗余度大、修改麻烦、删除异常、插入异常插入异常如“某系无学生时无法录入系主任信息”因系主任依赖于“系”这一非主属性删除异常如“删除某系最后一名学生导致系主任信息丢失”更新异常如“某系主任更换需修改所有该系学生记录”数据冗余上述异常的共性结果。函数依赖第3套问答第4题试卷明确定义“部分函数依赖”“传递函数依赖”。以第3套问答第2题为例关系模式含学号姓名所在系系主任课程名成绩其中所在系 → 系主任而学号 → 所在系故学号 → 系主任是传递函数依赖学号→所在系→系主任这直接导致系主任信息冗余违反3NF。范式演进逻辑第2套单选第13题1NF原子性→ 2NF消除非主属性对码的部分依赖→ 3NF消除非主属性对码的传递依赖。第2套单选第1题“任何两个属性的关系一定满足3NF”因其不可能存在传递依赖只有两个属性要么是码要么是非主属性无法构成A→B→C链条。3.3 事务与ACID不是四个字母而是并发安全的黄金契约CH5“数据库保护”中事务是并发控制的基石。第1套简答第5题、第2套填空第8题、第4套问答第1题均要求默写ACID。但死记硬背毫无意义必须理解每个特性在并发场景下的技术实现ACID特性技术保障机制试卷对应考点易错点原子性Atomicity事务日志Log 回滚Rollback第1套填空第4题“数据库恢复技术数据转储、登记日志文件”误以为原子性靠锁实现——锁解决并发冲突原子性靠日志保障“全做或全不做”一致性Consistency完整性约束主键、外键、CHECK 应用逻辑第1套简答第2题“实体完整性规则”、第2套问答第2题“关系模型完整性规则”将一致性等同于“数据正确”——它特指事务执行前后数据库必须从一个一致状态转移到另一个一致状态约束是守门员隔离性Isolation并发控制协议封锁、时间戳、MVCC第1套单选第4题“并发操作问题丢失更新”、第2套单选第9题“排它锁权限”混淆隔离级别——试卷默认考察可串行化Serializable即最高隔离其他级别Read Committed等未涉及持久性Durability日志强制写入Write-Ahead Logging, WAL 数据库刷盘第1套填空第4题“登记日志文件”、第3套填空第12题“利用日志和副本恢复”误以为持久性数据不丢——它指事务提交后其结果永久保存即使系统崩溃提示第2套单选第14题“实现事务隔离性的子系统”答案是C“并发控制子系统”而非D“恢复管理子系统”。恢复子系统保障原子性与持久性隔离性由并发控制子系统负责。4. 操作层SQL、关系代数与并发控制——为什么“写对SQL”比“背熟语法”难十倍操作层是抽象与约束的最终落地。试卷CH4SQL、CH3关系代数、CH5并发控制构成三位一体SQL是用户接口关系代数是理论内核锁协议是并发引擎。失分往往不在语法细节而在场景误判——把“查询”当“更新”写把“单表”当“多表”处理把“读操作”当“写操作”加锁。4.1 SQLDDL/DML/DCL三分天下索引是性能的隐形开关试卷CH4明确区分SQL功能第1套单选第2题、第2套单选第6题均考其本质。但真正拉开差距的是索引与约束的联动理解第1套CH4第3点DDLData Definition LanguageCREATE/DROP/ALTER定义数据库结构。第1套六题第1题建表、第2题加列、第5题删表全是DDL。注意第1套六题第3题“建索引”索引属于物理设计是DDL范畴非DML。DMLData Manipulation LanguageSELECT/INSERT/UPDATE/DELETE操作数据。第1套七题所有查询、插入、更新均为DML。DCLData Control LanguageGRANT/REVOKE权限控制。第2套填空第11题、第4套单选第7题均考此。索引的关键考点第1套CH4第3点聚簇索引Clustered Index数据行物理顺序与索引顺序一致一张表只能有一个如第1套六题第3题“按编号的索引”若未声明UNIQUE或CLUSTERED默认非聚簇。第4套单选第10题直接定义“索引项顺序与记录物理顺序一致”即聚簇索引。非聚簇索引Non-clustered Index索引叶节点存储指向数据行的指针可建多个。与约束关系PRIMARY KEY自动创建唯一聚簇索引除非指定NONCLUSTEREDUNIQUE约束自动创建唯一非聚簇索引。第1套六题第3题要求“唯一索引 unique index ,聚族索引 clustered index”需写CREATE UNIQUE CLUSTERED INDEX teach ON teacher(bh);4.2 关系代数五种基本运算不是公式而是查询逻辑的原子积木CH3第4点“关系代数”是试卷难点。第1套单选第11题、第2套单选第5/10题均考运算本质。必须抛弃“背符号”思维用自然语言重构传统集合运算并∪、差−、笛卡尔积×作用于同结构关系属性名、数量、类型相同。第1套应用题1“求选修课程5的学生学号和姓名”需先π_{学号}(σ_{课程号5}(选课))再与学生表连接不能直接对学生表和选课表求差——结构不同。专门关系运算选择σ、投影π、连接∞、除法÷σ选择水平切片筛选元组如σ_{年龄18}(学生)。π投影垂直切片筛选属性如π_{学号,姓名}(学生)。∞连接跨表关联学生 ∞_{学生.学号选课.学号} 选课。÷除法“全部”语义如第1套应用题4“选修全部课程的学生”标准解法是学生 ÷ π_{课程号}(课程)。其逻辑是对每个学生检查其选课集合是否包含所有课程号。注意第1套应用题5“选修了学号为‘95001’学生所学过的所有课程的学生”是除法的变体先π_{课程号}(σ_{学号95001}(选课))得目标课程集再学生 ÷ 目标课程集。4.3 并发控制锁不是万能但无锁寸步难行CH5“并发控制”聚焦锁机制。第1套单选第4题、第2套单选第9题、第4套单选第6/10题均考锁的类型与粒度。核心是理解锁的目的防止多个事务交叉执行破坏数据一致性。锁的类型共享锁S锁读操作加锁允许多个事务同时读第2套单选第9题T获得排它锁则T对Q“既可读又可写”因X锁排斥所有其他锁。排它锁X锁写操作加锁排斥所有其他锁第2套单选第9题答案C。锁的粒度第4套单选第7题从大到小为数据库→表→记录→字段。记录级锁Row-level Lock是主流DBMS最小粒度平衡并发性与开销。试卷默认考察记录级。死锁Deadlock第4套填空第10题定义“T1等T2T2等T1”。预防策略第4套问答第4题一次封锁法事务开始即锁所有需用数据、顺序封锁法规定全局锁序。5. 易错点12处高频翻车现场——为什么“明明会”却总丢分这份试题集最残酷也最宝贵的地方在于它精准暴露了学习者从“知道”到“掌握”之间的12道鸿沟。这些不是冷知识而是所有人在建立数据库直觉时必然经历的认知断点。梳理如下每一条都附带血泪经验式的纠错指南5.1 外模式/模式/内模式混淆“谁为谁服务”易漏点认为“外模式是给DBA看的”或“内模式是用户写的物理存储代码”。为什么漏教材常强调“三层结构”却未点破外模式是DBA为特定用户组定制的逻辑视图模式是DBA定义的全局逻辑结构内模式是DBA定义的物理存储描述。三者都是DBA的工作产物用户只接触外模式。怎么补做第1套单选第1题时默念“三级模式结构”“一个模式全局逻辑多个外模式用户视图一个内模式物理存储”映射是DBA配置的桥梁。5.2 主键 vs 候选码把“唯一性”当“标识性”易漏点第1套单选第6题“借阅关系的码”选A“书号”或B“读者号”忽略“同一本书允许多次借阅但不能同时借多本”意味着书号读者号组合才能唯一标识一次借阅。为什么漏误以为主键必须是单个字段或混淆“候选码”能唯一标识元组的属性组与“主码”从中选出的一个。怎么补凡遇“码”题先找最小超码——能唯一标识元组且去掉任一属性就失效。借阅表中单独书号不能标识同一书多人借单独读者号不能标识同一人借多书故书号读者号是候选码。5.3 视图操作误把“虚表”当“实表”易漏点第1套单选第3题“在视图上不能完成的操作”选C“更新视图”但实际某些简单视图可更新正确答案D“在视图上定义新的基本表”因视图是虚表不能作为建表依据。为什么漏将“视图可更新”绝对化忽略其前提如不能含聚合、分组、DISTINCT、子查询等。怎么补牢记视图本质是存储的SELECT语句。任何试图改变底层表结构的操作建表、删表、改列都与视图无关。5.4 关系代数除法用“存在”代替“全部”易漏点第1套应用题4“选修全部课程的学生”用π_{学号}(选课) − π_{学号}(σ_{课程号 NOT IN π_{课程号}(课程)}(选课))等错误思路陷入“排除法”陷阱。为什么漏除法R ÷ S的语义是“R中那些与S中所有元组都有联系的元组”需用双重否定R ÷ S π_{X}(R) − π_{X}(π_{X}(R) × S − R)试卷参考答案的NOT EXISTS嵌套正是此逻辑。怎么补遇到“全部”“每一个”“所有”等词条件反射写NOT EXISTS ( SELECT * FROM S WHERE NOT EXISTS ( SELECT * FROM R WHERE R.XS.X AND R.YS.Y ) )。5.5 SQL NULL处理把“未知”当“假”易漏点第2套单选第8题“涉及空值的操作不正确的是”选A或B忽略C“AGE NULL”永远为UNKNOWN非TRUE/FALSE应写AGE IS NULL。为什么漏SQL中NULL参与任何比较, , 结果均为UNKNOWNWHERE子句只保留TRUE行。怎么补所有NULL判断必须用IS NULL或IS NOT NULL禁用。5.6 聚簇索引以为“主键聚簇索引”易漏点第1套六题第3题“建按编号的索引”写CREATE INDEX teach ON teacher(bh);未加CLUSTERED但题目明确要求“聚族索引”。为什么漏多数教材示例中主键自动建聚簇索引但CREATE INDEX默认建非聚簇需显式声明。怎么补建聚簇索引必须写CREATE CLUSTERED INDEX ...且一张表仅一个。5.7 事务隔离级别混淆“可串行化”与其他级别易漏点第1套单选第4题“并发操作问题”选A“数据独立性降低”但标准答案D“丢失更新”是可串行化缺失的直接后果。为什么漏未意识到试卷所有并发题均基于可串行化最高隔离其他级别如读已提交未涉及。怎么补凡考并发问题只考虑可串行化下的现象丢失更新、不可重复读、读脏数据。5.8 函数依赖推导忽略“平凡依赖”易漏点第3套问答第2题分析函数依赖漏写学号 → 学号等平凡依赖X→Y且Y⊆X。为什么漏教材强调非平凡依赖但规范化判定需考虑所有依赖。怎么补写函数依赖时先列所有平凡依赖再找非平凡依赖。5.9 数据库恢复混淆“日志”与“备份”易漏点第1套填空第4题“数据库恢复技术”只写“数据转储”漏“登记日志文件”。为什么漏数据转储Backup是全量恢复基础但日志Log是增量恢复核心记录所有事务操作用于崩溃后重做Redo或撤销Undo。怎么补恢复必有二转储定期全量 日志实时增量。5.10 ER模型联系基数把“n:m”当“1:n”易漏点第2套单选第2题“n:m联系通过增加一个 ”选B“属性实现”但正确答案A“关系实现”因n:m需新建关联表。为什么漏误以为用属性如“学生-课程”表加“成绩”属性能表达n:m实则属性只能表达1:1或1:n。怎么补n:m联系必转为独立关系表含两端主码作为外码。5.11 视图定义忽略WITH CHECK OPTION易漏点第4套填空第4题“为防止通过视图插入新行时违反定义条件”漏WITH CHECK OPTION。为什么漏此子句确保对视图的INSERT/UPDATE操作新行必须满足视图WHERE条件。怎么补凡视图有WHERE条件且需支持DML定义时必加WITH CHECK OPTION。5.12 规范化分解忽视“无损连接”与“保持依赖”易漏点第2套填空第4题“分解关系的两条基本原则”只写“保持函数依赖”漏“具有无损连接性”。为什么漏无损连接保证分解后自然连接能还原原关系避免信息丢失保持依赖保证原约束能在新关系上验证。怎么补分解必双检①R1 ∩ R2 → R1−R2或R1 ∩ R2 → R2−R1无损② 所有FD在分解后关系的闭包中可推导保持依赖。6. 复习清单一份可执行的考前72小时冲刺计划——从知识地图到指尖肌肉记忆现在你手里有一张完整的数据库知识三维地图抽象/约束/操作也清楚了12个高频翻车点。但考试不是考你知道什么而是考你在压力下能否瞬间调用正确模块。以下是我根据这份试题集提炼的72小时冲刺清单不求面面俱到只保核心路径畅通。每天24小时分三轮推进每轮聚焦一个维度用“做题→溯源→重构”闭环强化。6.1 第一轮24小时重建抽象层肌肉记忆Day 1目标看到“三级模式”“ER图”“关系模型”等词脑中自动浮现映射关系与转换逻辑。Step 1限时自测2小时用第1套、第2套、第3套的所有选择题与填空题共约45题严格计时90分钟完成。只做不查不纠结。完成后用红笔标出所有抽象层题目三级模式、数据模型、DBS概念等统计错题数。Step 2溯源精读6小时针对错题回归试卷CH1-CH2逐句精读。重点重画三张图三级模式映射图在纸上画三层用箭头标出“外模式/模式映射”保障逻辑独立性“模式/内模式映射”保障物理独立性。在箭头旁写第1套第7题答案“B.模式与内模式的映射”。ER到关系转换图画一个简单ER图如学生-选课-课程旁边写出转换规则实体→表联系1:1/1:n/n:m→外码或新表。对照第2套单选第7题“ER图转换属逻辑设计阶段”确认转换动作发生在概念设计之后、逻辑设计之中。DBS组成树状图中心写DBS分支画DB、DBMS、硬件、DBA、用户用虚线框出DBAS应用系统标注“DBAS依赖DBS但非其组成部分”。Step 3重构输出4小时合上试卷用手机录音功能给自己讲3分钟“数据库系统DBS不是软件是DBDBMS硬件DBA用户的整体。DBMS是其中的软件管家提供DDL建表、DML查数据、DCL管权限。它的核心能力来自三级模式外模式是给不同用户看的定制视图模式是全局逻辑蓝图内模式是硬盘上的物理布局。两组映射让它们解耦——改物理布局内模式只需调模式/内模式映射用户程序基于外模式完全不受影响。”录完听一遍不满意重录直到逻辑流利、无术语卡壳。6.2 第二轮24小时固化约束层条件反射Day 2目标看到“异常”“范式”“事务”等词手指自动写出判定条件与SQL模板。Step 1异常-依赖-范式速查表3小时制作一张A4纸表格标题“四异常与函数依赖对应表”异常类型典型场景一句话对应函数依赖违反的范式解决方案一句话插入异常某系无学生无法录系主任所在系 → 系主任传递依赖3NF拆表系表系系主任学生表学号姓名所在系删除异常删光某系学生系主任丢失同上同上同上更新异常改系主任要改所有该系学生记录同上同上同上数据冗余同一系主任信息重复存储同上同上同上填完后默写第3套问答第2题的函数依赖学号 → 姓名学号 → 所在系所在系 → 系主任(学号,课程名) → 成绩圈出所在系 → 系主任并标注“传递依赖”。Step 2ACID与锁协议手写5小时在白纸上不看资料默写ACID四特性英文首字母、中文名、一句话技术保障如A原子性靠日志回滚锁类型对比表S锁/X锁的兼容性矩阵死锁定义第4套填空第10题原文及一次封锁法、顺序封锁法定义第4套问答第4题。写完对照试卷答案红笔修正。Step 3SQL约束模板库6小时新建文本文件命名为sql_constraints.md按以下格式敲入务必手打非复制-- 1. 主键约束建表时 CREATE TABLE student ( sno CHAR(10) PRIMARY KEY, sname VARCHAR(20) ); -- 2. 唯一约束建表时 CREATE TABLE teacher ( tid INT UNIQUE, -- 允许NULL但仅一个 tname VARCHAR(20) ); -- 3. 外键约束建表时 CREATE TABLE sc ( sno CHAR(10), cno CHAR(5), grade INT, PRIMARY KEY(sno, cno), FOREIGN KEY(sno) REFERENCES student(sno), FOREIGN KEY(cno) REFERENCES course(cno) ); -- 4. 检查约束域约束 CREATE TABLE student ( age INT CHECK(age BETWEEN 0 AND 150) ); -- 5. 视图WITH CHECK OPTION防违规插入 CREATE本文还有配套的精品资源点击获取