mysql 对象属性_mysql – 数据库设计:具有不同属性的对象

我正在设计一个产品数据库,其中产品可以根据其类型具有非常不同的属性,但是每种类型的属性都是固定的,并且类型根本不可管理.例如.:

magazine:title,issue_number,pages,copies,close_date,release_date

web_site:name,bandwidth,hits,date_from,date_to

我想使用InnoDB并在引擎允许的情况下强制执行数据库完整性.处理此问题的推荐方法是什么?

我讨厌那些表有100列并且大多数值为NULL的设计,所以我想到这样的事情:

product_type

============

product_type_id INT

product_type_name VARCHAR

product

=======

product_id INT

product_name VARCHAR

product_type_id INT -> Foreign key to product_type.product_type_id

valid_since DATETIME

valid_to DATETIME

magazine

========

magazine_id INT

title VARCHAR

product_id INT -> Foreign key to product.product_id

issue_number INT

pages INT

copies INT

close_date DATETIME

release_date DATETIME

web_site

========

web_site_id INT

name VARCHAR

product_id INT -> Foreign key to product.product_id

bandwidth INT

hits INT

date_from DATETIME

date_to DATETIME

这可以处理级联产品删除但是……好吧,我不完全相信……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值