有没有人有任何教学关系数据库和SQL的好方案?我可以找到的所有示例都是微不足道的或具有不可能的域约束(如全名是唯一的).
我特别想找到一些标准化的好例子:不能立即适合3NF和BCNF的表格.目前我正在为每个级别使用不同的问题.
当然,我也喜欢设计糟糕的数据库的好例子,但是在掌握了基础知识之前,它会有点分散注意力.
谢谢,一些很好的例子.我已经将学生/班级标记为答案,因为我认为这是迄今为止最好的,但如果有人想要贡献更多,请做.
我似乎记得学生/班级是经典之作,你也可以把成绩放在那里,使其更复杂一些.
学生可以上很多课
课程有很多学生
对于每个班级,学生都会参加,他们可以获得成绩
最初,您可以在一个表中执行此操作,并将非规范化执行到三个.
无关
在教授数据库类之后,我建议在掌握查询基础知识之前忘记设计.一旦人们理解了如何从数据库中获取数据,人们就会更加理解对规范化的需求.如果你从规范化和设计开始,你将失去大部分学生在课堂上的其余部分.设计应该是数据库课程的最后一个模块,但我所评论的所有教科书都是从它开始的.
在学习查询时,更好地让他们查询好的和坏的数据库设计,然后他们将真正理解在教授设计时糟糕的设计是多么痛苦.