公司前辈要我做一个动态表单数据库设计,思维愚钝,无法下手。后来前辈帮我把表结构画出来了,才茅塞顿开
现在和大家分享一下。
需求:
能够根据数据库在界面动态显示表单,包括表单类型、名称等,并且必须提供 添加新表单,修改表单等功能。
为了满足客户不断的需求变化,有时候需要为某商品增加、修改、删除、属性,这样的话以往的数据库表就很难实现,
因为表的字段是定死了 如果你需要增加一个属性的时候 ,就必须修改表,听说这是不允许的~~。
所以我们要设计一个灵活的数据库 下面以电脑设备为例:
pc 现有属性 name cpu ram disk 现在我们要为pc添加一个 mainboard 属性。
既然必须提供增加表单,那么我们创建表的时候就不能以cpu ram disk 为PC表的列名, 能够修改的话只能是值
所以应该建立以个属性表 来保存这些值
create table y_property(
proid varchar2(16) primary key,
proname varchar2(64),--属性名称
htmltype varchar2(64),--界面类型
isneed number --是否必填
)
proid |
proname |
htmltype |
isneed |
p001 |
型号 |
text |
0 |
p002 |
cpu |
text |
0 |
p003 |
ram |
select |
0 |
p004 |
disk |
select |
0 |
然后要建立以个表来保存这些电脑属性的值
create table y_provalues(
proid varchar2(32) , --属性id
entity varchar2(32) , --实例id
provalue varchar2(1024) ,--属性值
constraints pro_fk_proid foreign key (proid) references y_property(proid),
constraints provalues_pk primary key (proid,entity)
)
proid |
entity |
provalue |
p001 |
e001 |
联想扬天V45 |
p002 |
e001 |
AMD5200 |
p003 |
e001 |
金士顿 |
p004 |
e001 |
wd500g |
p001 |
e002 |
HP450 |
p002 |
e002 |
INTEL458 |
p003 |
e002 |
黑金刚 |
p004 |
e002 |
wd320g |
其实也可以这样理解:
y_property 这个表就是一个类
y_provalues 这个表就是 y_property 这个类的实例。entity属性就是实例编号,就是一个实际存在的产品编号。
另外我们还可以在这个基础上面拓展其他的表使其功能更为丰富,
如 电脑档次表、cpu表(这样的话我们就可以y_provalues中的provalue 与其他表关联,在界面就可以提供下拉列表显示,选择)
这样下来的话就能对电脑商品添加属性了。
接下来的任务就是做一个工程实现界面的动态表单了
第一次写技术blog 感觉表达不是很清楚,。希望大家能看懂,看不懂的地方给我指出来吧
分享到:
相关推荐
JAVA动态表单设计,自定义表单,自定义数据,在线设计,数据库存储
是一个很好的数据库设计源码,大家可以好好研究一下啊
表单建模数据库设计文档-- ecology80
3 表单采用简单的 html+控制标签的方法实现 4 权限和模板引擎,以及其它辅助函数直接使用办公系统自带的框架 5 充分利用 PHP 语言的特点,流程设计是基于数据库的,程序上使用 OO 设计,但采用重 对象的方法 6 不把...
J2ee,oracle,软件工程,计算机专业课程设计,用的mysql做数据库,附数据库设计表单(在项目包中),用的netbean开发工具
数据库程序设计表单设计与应用PPT学习教案.pptx
用jbpm做一个工作流系统,系统支持自定义工作流表单,同时表单要与流程定义关联,这是流程定义与动态表单的设计图
数据库设计 省级政务平台数据库设计 数据库设计原则 (1)标准化 严格按照相关技术标准完成数据库的设计,包括国土资源部颁发的相应数据库建库规 范标准、国家已经发布的许多基础的行业分类、代码标准,以及在信息化...
公司经常需要制作一些网上报名系统的表单或者问卷调查,如果涉及的字段较少的话,还好应付;... 使用之前必须有设计好的数据库哦. 这样就好办了.懂点ASP的可以DIY了. 关键字:数据库 表单处理代码自动生成工具
包括如何创建表单,创建系统数据库,连编,还有一个完好的应用程序,很好用的
自定义表单设计思路
通过网络对该银行储蓄系统项目进行详细调查研究,初拟一个简单的系统实现报告,一方面是为了熟知银行储蓄系统具体的设计实现过程,另一方面是对数据库设计的探索和认识,了解数据库设计的全过程以及会用数据库设计...
数据库基础表单设计.pptx
数据库表单设计与应用.ppt
我花了半天时间把网上零散的资源整理成了一张excel表单,activiti 24张表及其每个字段都做了比较详细的介绍,看上去一目了然
工作流引擎数据库设计 工作流引擎数据库表设计全文共3页,当前为第1页。 工作流引擎数据库表设计全文共3页,当前为第1页。 概述 基于打造一个灵活、高效、轻量级的工作流引擎,暂时不考虑功能的完备和复杂,只是实现...
2 解决方案 ( 或数据库系统设计 ) 2.1 E-R 模型设计 根据E—R图,将其转化为如下数据实体,数据库:学生成绩管理系统.dbc,包括如下的表 和视图: 1) 学生登记表——学生表.dbf。 字段名称 字段类型 字段宽度 xh ...
数据库课程设计 仓库信息管理系统 数据库课程设计 仓库信息管理系统
数据库程序设计表单设计与应用实用教案.pptx
idea JAVA动态表单设计,自定义表单,自定义数据,在线设计,数据库存储