关于用户自定义字段的设计?

客户往往要求不修改源代码的情况添加新的字段或删除无用的字段。比如有的公司中有基本工资,奖金,而有的公司只需要基本工资。怎样设计才能满足模型属性的可扩展?在数据表中预留多个字段?还是有更好的方案?

预留字段是很常用的办法,比如你设计主表时就预留20个字段等等。

但是,如果你不能控制字段的个数,比如你觉得预留多少都可能出问题……你或许该考虑用名-值对来存储和关联。但这样应该会有效率损失。