客户要求在系统中增加DIY功能,具体的说就是允许客户对数据表增加自定义字段,并跟原有的字段一样使用
举例来说:
员工表
星期一, 人力说我要增加体重项 :记录的是公斤数
星期二, 人力说我要增加是否近视项 :近视或者 不近视
星期三, 人力说我要增加颜值项 :高颜值、中颜值、低颜值、没颜值
一、数据表_表
ID 数据表名称
1 员工表
二、字段表_表
FID TID(表ID) FNAME(字段名) FDatatype(数据类型) FDefaulValue FCONTROL(显示方式)
1 1 体重 decimal(18, 2) 0 文本框
2 1 是否近视 bit 0 单选框
3 1 颜值项 int 0 下拉列表框
三、数据类型_表
四、控件类型表
--------------------------------------------------------------------------------------------------------
我要请教的是: 自定义的字段以什么样的方式保存用户提交的数据比较合理
一种方式是 直接修改表结构
还有一种是 把数据放到一个数据表里 ,每一行对应一列:
ID TID(表ID) FID(字段ID) VALUE
需要考虑的问题是:用户操作很频繁,尤其是数据查询,因此要兼顾功能和性能
那位做过这方面的开发,请给点意见
谢谢
------解决思路----------------------
直接 ALTER TABLE 吧。
这种随意组合条件查询的,根本没法利用索引,性能是不要指望了!
------解决思路----------------------
每个公司单独一个DIY表,反正你不会多个公司一起查询。