数据库设计时,主表中有唯一业务编码字段,关联表还需要设计外键吗

查看 61|回复 4
作者:maitiantuzi   
举个例子,
主表 - 物料表 material:
id: 主键 ID
code: 物料唯一编码
name: 物料名称
物料入库记录表:
stock_in:
id: 主键 ID
material_id: 外键 - 物料 ID (这里需要吗?)
mateiral_code: 物料唯一编码
in_date: 入库时间

物料, 主表, 外键, 主键

abcdexx   
我是很少用数据库的外键,中间表有字段关联就可以了吧。
forgottencoast   
为了方便你只查物料 ID 的入库记录时不用连表查,间接在这个场景下提高性能,如果没有这需要可以不要。
shiziqyf   
主键 id 是数据库层面的唯一字段,物料唯一编码是业务层面的唯一字段。
看你们是用哪个字段做关联的
拿不准的情况,都存着,冗余一点总比后期加强
JYii   
外键比较少用了,做删除时有点麻烦,如果有 db 迁移也麻烦
您需要登录后才可以回帖 登录 | 立即注册

返回顶部