我有 2 个创建 SQL 结构的选项
例如,我需要列Code、Name和Religion:
选项1 :
+=======+========+=============+
+ Code + Name + Religion_id +
+=======+========+=============+
+ 1 + A + 1 +
+ 2 + B + 2 +
+ 3 + c + 2 +
+=======+========+=============+
+=============+===============+
+ Religion_id + religion_name +
+=============+===============+
+ 1 + Caaaaaa +
+ 2 + Daaaaaa +
+=============+===============+
选项 2:
+=======+========+
+ Code + Name +
+=======+========+ For Master File
+ 1 + A +
+ 2 + B +
+ 2 + C +
+=======+========+
+=============+===============+
+ Religion_id + religion_name +
+=============+===============+ For Master File
+ 1 + Caaaaaa +
+ 2 + Daaaaaa +
+=============+===============+
+=======+=============+
+ Code + Religion_id +
+=======+=============+ For Transaction File
+ 1 + 1 +
+ 2 + 2 +
+ 3 + 2 +
+=======+=============+
我已经做了大约 1 年的数据库。
但是在大学学习之后,我了解到主文件中不能有重复的数据。
在选项 1中有一个重复的值,例如 2 个人具有相同的宗教。所以他们创建了类似于Option 2的结构。
但是 IMO选项 2会比选项 1占用大量内存空间,包含一千条记录。
我的问题是:哪一个是创建 SQL 结构的最佳实践?
编辑:1个名字只能有1个宗教