如何设计客户自定义字段的功能 在系统开发中.我们经常会遇到一个问题,就是允许客户对表自定义字段,并跟其他的字段一样使用.比如:
显示名称:新增字段属性显示的名称
数据类型:比如是数字型,字符型,日期型等.
长度:数字型的长度.字符型的长度等.
可选值:如果是枚举型的,应该定义可选的值.界面上将以下拉框的方式显示
定义好了.
客户在使用的时候,可以跟正常的字段一样使用..对于这样的方案应该如何设计呢?
显示名称:新增字段属性显示的名称
数据类型:比如是数字型,字符型,日期型等.
长度:数字型的长度.字符型的长度等.
可选值:如果是枚举型的,应该定义可选的值.界面上将以下拉框的方式显示
定义好了.
客户在使用的时候,可以跟正常的字段一样使用..对于这样的方案应该如何设计呢?
字段 数据类型 描述 约束
CUSTOM_ID INT 自定义表编号 自动增1 主键
CUSTOM_MODULE VARCHAR(50) 所属模块
CUSTOM_NAME VARCHAR(50) 自定义字段名称 非空
TABLE_NAME VARCHAR(50) 所属表名 非空
CUSTOM_TITLE NVARCHAR(50) 字段显示标题 非空
TAXIS_CODE INT 排序编号 非空,默认值0
CUSTOM_CONTROL VARCHAR(50) 输入控件名称,如TEXTBOX 、LISTBOX等 非空,
CUSTOM_TEXT NVARCHAR(500) 控件默认文本或显示文本,有多项时以“,”分隔
CUSTOM_VALUE NVARCHAR(500) 控件显示文本所对应的值,有多项时以“,”分隔,一般用于下拉列表框,单或复选按钮等
ISSELECT VARCHAR(1) 是否作为查询字段,强烈建议用户不启用该功能,因为这个字段的查询速度会非常的慢 非空,默认0
0否
1是
FLAG VARCHAR(1) 是否启用 非空,默认0
0否
1是
REMARK NVARCHAR(200) 备注 CUSTOM_VALUES 自定义字段值表
字段 数据类型 描述 约束
CVALUE_ID INT 自定义值表编号 自动增1 主键
CUSTOM_ID INT 所属自段编号 非空,CUSTOM表外键CUSTOM_TYPE VARCHAR(50) 当前控件类型 非空
TABLE_PK_VALUE INT 所属表的主键 非空,
CVALUE NVARCHAR(500) 值 在有多个值时以“,”分隔 非空
REMARK NVARCHAR(200) 备注
请大交多提富贵意见~
sysobjects--表及函数等对象
syscolumns--列对象
syscomments--表及函数内容等
sysindexes--索引
systypes--数据类型