一个学生表,学号是主键;
一个课程表,课程号是主键;
一个选课表,(学号,课程号)是主键。
在选课表里,一个学号可以对应好几门课程,一门课程也可以有很多个学生选。
MySQL 作为当下最为流行的关系型数据库。体积小、速度快、总体拥有成本低、开放源码,是各企业开发首选数据库。由于普及性极高,自然是面试考核的重点内容。 最近几年面试进一步向深、向广,一方面在于 MySQL 在应用层面的确很强势,另一方面对 MySQL 的掌握程度直接决定了你在技术团队的地位,不管是普通开发还是首席架构、CTO 都能够从 MySQL 中汲取技术养料。 普通开发往往积累单点技术、比如 CRUD、锁类型、索引的数据结构…而对于技术骨干、架构师则往往需要对底层原理吃透,数据库事务 ACID 是如何实现的?何时命中索引、何时不能,为什么?分布式场景下数据库怎么优化才能保持高性能? 说白了,知道怎么用是一方面,知道为什么则是更为稀缺的能力。就好比当年阿里从 Oracle 迁到 MySQL,要是没有像褚霸这种能直接修改源码的大牛,恐怕还得再推迟个两年。如果不考虑冗余的话。CREATE TABLE 课程表 (
星期 TINYINT, -- 一周七天 1 to 7
课时 TINYINT, -- 一天 上午/下午/晚上 依次的课数字
教室编号 varchar(10), -- 101、102、103...
-- 以上是已知的信息
-- 下面是估计 应该有的信息
班级编号 INT, -- 这个应该和一个 班级表去 关联。
教师编号 INT, -- 这个应该和一个 教师表去 关联。
课程编号 INT-- 这个应该和一个 课程表去 关联。
)
这样
时间, 地点,人物,事件
都包含了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)