如何实现能够让客户自定义字段。

devie 2007-04-18 04:12:23
我现在要做一个多用户系统,准备实现让用户自定义字段的功能,比如用户可以为自己的产品设定公司自己特定的属性。我现在考虑了几个方案,第一是建一个表,提供用户自己修改表字段的显示名字,但是这样字段类型是死的,并且字段数量也是有限的。第二种是给每个用户建一个附加表,然后根据用户的设置直接修改表的结构,但是这会受到一个数据库总表数量的限制,第三种是给每个用户建一个库,但是这样同样会遇到上面的问题。第四种是把行转换成列,但是这会造成编程的难度,同时将会大大的影响性能。

哪位有好的解决方案,既能方便使用(特别是好查询,用户自定义的字段要允许查询),同时又能保证性能。
...全文
638 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kay002 2011-03-24
  • 打赏
  • 举报
回复
有待研究,mark
qinqindodo 2007-04-18
  • 打赏
  • 举报
回复
三张表 t_table,t_column,t_value
t_table,t_column, 类似sqlserver 的系统表,t_value用来指定某行某列的值,需要定义5个不同的数据类型的列,数据类型在t_column中指定,
通过存储过程,将t_value 根据t_table,t_column,整理成视图查询.同时,也可以通过存储过程或者触发器来更新视图.
效率的话,我的数据大约是7个表62个列,t_value 3万多一点,查询效率可以接受,(因为动态,也没有加索引)


OracleRoob 2007-04-18
  • 打赏
  • 举报
回复

预设足够用个数的字段,如:100个字段,F1,F2,F3,F4...

另外单独建表,定义这100个字段的数据类型和标题。

如:

字段名 数据类型 标题
F1 数值 年龄
F2 字符 身份证号

通过程序动态的生成查询或操作表的SQL语句。


22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧