6.Oracle6
1. 补 约束:
-
not null
-
default(不是约束)
-
unique: 名字
-
primary key: not null + unique
-
foreign key
-
check : 检查约束
alter table student add constraint Check_STUNAME_LENGTH check (length(stuname) > 2); delete from student where length(stuname) <= 2; insert into student values(1000, 'X', 2);
2 DB设计:
2.1 自关联: 无限父子:
EMP:empno mgr; 菜单
2.2 主外:
一个学生只有一个唯一的学号-主键
一个学生有一个班号—外键
2.3 多对多(1)
- 课程和学生是多对多关系
- 通过中间表的1N和N:1解决
- 通过中间表的1N和N:1解决
2.4. 多对多(2)
在学生表中加一个复合的状态管理列:1;2;3
基本补修改的业务
2.5. 一对多(2)
- 一个工作多个员工。不用主键
2.6. 冗余列
- 场景:经常用到dname, 做一个冗余的列。
- 冗余CUD的时候要修改两张表
2.7. 冗余表:1:1场景
列特多又不常用:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)