如果您有一个具有大型功能(100+)的数据对象,最好通过添加列或以行格式存储来扩展此数据



因此,如果你可以想象一个人同时参加了100门不同的课程,并且刚刚获得了所有课程的最终成绩,那么最好这样存储这些信息(宽列(:

科学英语>td>98
personID 数学
1 90 88
2 91 98 90

在任何表上创建100多列总是个坏主意。任何数据库中的列数都有限制。读这篇文章可以获得更好的想法。正如你可以想到以下方式。

学生标记详细信息

受试者ID获得的标记<1>4
StudentsMarkDetailsID 人员ID考试ID
1 1 3 64 1
2 2 4 36
3 1362

绝对选项二-少数固定列数。

原因有很多。以下是一些:

  • 维护:如果你现在有100列,明天你就会有101列。添加列需要更改模式,这很痛苦
  • access:要获取值,需要对列名进行编码。这是访问它的代码中的一种维护问题,无论是查询还是应用程序代码
  • 查询:基本查询变得不可能。编写一个查询,返回学生的平均成绩,问题就会立即显现出来

以下是我为自己制定的两条从未打破的坚实规则:

  1. 喜欢更多的行而不是更多的列
  2. 喜欢多列而不是多表

最好每个人和每个课程存储一行数据。为什么?以下是一些原因:

  • 不同的人可能有不同的课程
  • 大多数数据库对表中的列数都有限制
  • 您可能希望存储每个分数的附加信息,例如输入分数的日期/时间
  • 如有必要,添加新课程或更改现有分数都很容易

相关内容

  • 没有找到相关文章

最新更新