交付:整套 schema 一次验完

交付:整套 schema 一次验完

这条路线的交付题:把一份 schema 的四项验收一次做完——三张表都有主键、外键指得对、拼得回原样、约束能挡住错误数据。输出四样(用 / 隔开)。 enroll_flat(一张宽表,什么都塞在里面)

阅读更多 →
第四步:拼回去验收

第四步:拼回去验收

把自己建的三张表连回去,和原来那张宽表逐行对比。输出三样:拼出来几行、宽表几行、内容是否一致(用 / 隔开)。 enroll_flat(一张宽表,什么都塞在里面) student phone co

阅读更多 →
第三步:让约束替你挡一次错

第三步:让约束替你挡一次错

往建好的表里插三条错误数据:重复的学生名、重复的选课、缺电话的学生。输出三次各违反了哪一条,再输出学生表还剩几行(用 / 隔开)。

阅读更多 →
第二步:把数据填进去

第二步:把数据填进去

往三张表里填入四个学生、三门课、六条选课。输出三张表各几行(用 / 隔开)。

阅读更多 →
第一步:建三张表

第一步:建三张表

从零建出学生、课程、选课三张表(带主键、非空、唯一约束,选课表两列合起来当主键)。输出三张表各有几列(用 / 隔开)。

阅读更多 →
一份完整 schema 的验收

一份完整 schema 的验收

把三张表的结构核一遍。输出四样:三张表各几行、拼回去和宽表是否一致(用 / 隔开)。 enroll_flat(一张宽表,什么都塞在里面) student phone course teacher

阅读更多 →
设计做到什么程度算够

设计做到什么程度算够

一份小系统的 schema,做到什么程度就该收手?【0】

阅读更多 →
一份 schema 交付前该自查什么

一份 schema 交付前该自查什么

把设计好的建表语句交出去之前,最该自查的是【0】。

阅读更多 →
自己写:把这笔账算完整

自己写:把这笔账算完整

这一节的收官:把反规范化的两面一起量出来。输出四样:现算要过几行、读冗余列要过几行、插一条新选课之后冗余列对不对、重算之后对不对(用 / 隔开)。 enroll_flat(一张宽表,什么都塞在里面)

阅读更多 →
自己写:把两种做法的代价摆出来

自己写:把两种做法的代价摆出来

对比两种做法:每次都连表现算 vs 直接读冗余列。用计数函数数出各自要过多少行。输出两个数(用 / 隔开)。 enroll_flat(一张宽表,什么都塞在里面) student phone cou

阅读更多 →