有用户表,还有用户组表,一个用户组可以有多个设备,一个设备可以属于多个用户组。
用户组和设备是多对多关系,所以有一个用户组和设备关联中间表。
设备有不同的种类,比如摄像机,照相机等。
如果设计成 摄像机和照相机是2张表,那么 用户组设备关联中间表的“设备ID”就没法设置外键,如果设计成一个表,外键没问题,但是不同种类的设备,除了 名字,描述这样的字段外,其他字段并不相同。
设备很像一个“抽象类” , “抽象类”需要单独建个表么? 这种情况应该怎么设计表?
有用户表,还有用户组表,一个用户组可以有多个设备,一个设备可以属于多个用户组。
用户组和设备是多对多关系,所以有一个用户组和设备关联中间表。
设备有不同的种类,比如摄像机,照相机等。
如果设计成 摄像机和照相机是2张表,那么 用户组设备关联中间表的“设备ID”就没法设置外键,如果设计成一个表,外键没问题,但是不同种类的设备,除了 名字,描述这样的字段外,其他字段并不相同。
设备很像一个“抽象类” , “抽象类”需要单独建个表么? 这种情况应该怎么设计表?
给照相机表和摄像机表加一张父表设备表,设备表里面记录照相机和摄像机的公共属性,主键id。而子表照相机表和摄像机表里加一个外键指向设备表的主键、同时这外键也是本表的主键。照相机表和摄像机表里其他的字段就是各自私有的属性。