表单-多表头和可变表头(一条信息的数据量大小可变。)该怎么设计数据库的表结构。

问题描述

多表头和可变表头(一条信息的数据量大小可变。)该怎么设计数据库的表结构。

我现在有一个表单需要存入数据库。但是客户要求该表单的 表头可变。也就是他要自定义表单。这种情况我该怎么为这张表单设计表结构了?同时该表单中的所有字段都要参加计算的,有些项的值是其他项通过计算得出的。虽然是简单的加减乘除,但是客户要求可以自动的计算。小弟用的Spring MVC+JPA 数据库mysql 或者 oracle

解决方案

一般一个表单中的字段分为固定的字段和 动态的字段。 将固定的字段,设计成一张表,称为主表。 将动态的字段放在放在一张关联表。 这个关联表像数据字典一样。
字段有 id code value 设计成字符串类型。 具体的类型转换 可以通过 编程语言或者sql来进行转换和计算。 我在公司就是这么做的。

解决方案二:

每种数据类型多准备一些,比如50个字符串,50个int,50个boot等要用到的类型,然后做一个记录表,在用户定义表头时记录用户都分别使用了多少列

在计算的时候动态生成SQL语句来完成计算

解决方案三:

每种数据类型多准备一些,比如50个字符串,50个int,50个boot等要用到的类型,然后做一个记录表,在用户定义表头时记录用户都分别使用了多少列

在计算的时候动态生成SQL语句来完成计算

解决方案四:

自定义表单。这种情况我该怎么为这张表单设计表结构了?
答:这种情况可以用一个明细表来保存,明细表里要主键,字段和值,然后动态加载到表单上,也可以在数据库中多设计几个字段,弄一个设置表,用户设置后显示相应的值

表单中的所有字段都要参加计算的,有些项的值是其他项通过计算得出的
答:这个可以通过Js来实现公式解析及执行,可参考
http://www.jb51.net/article/19982.htm

解决方案五:

两种方式
(如 你想保存 "姓名"、"性别"、"年龄"三列,列数不固定)
1、将常用的横表变成纵表
常用的就是 数据库中设计三列 name,sex,age
现在数据库里面设置 为 key,value
因此保存为
key value
name 张三
sex 男
age 18
这样即使你列不固定,添加数据即可
不过这样你在取数据的时候要进行一次行转列
2、就是"chuqiang1101"和"PB人生"说的那样,设计两张表,做一个关联

解决方案六:

每种数据类型多准备一些,比如50个字符串,50个int,50个boot等要用到的类型,然后做一个记录表,在用户定义表头时记录用户都分别使用了多少列一般一个表单中的字段分为固定的字段和 动态的字段。 将固定的字段,设计成一张表,称为主表。 将动态的字段放在放在一张关联表。 这个关联表像数据字典一样。

时间: 2024-08-04 09:46:28

表单-多表头和可变表头(一条信息的数据量大小可变。)该怎么设计数据库的表结构。的相关文章

多条件筛选应该怎么设计数据库的表

问题描述 多条件筛选应该怎么设计数据库的表 多条件筛选应该怎么设计数据库的表 比如一间房子 有占地面积 价钱 风格等等筛选条件 应该怎么建表 解决方案 两个办法,一个是为每个属性设置字段,一个办法是用键值对.也就是商品id 属性名 属性值

PHP提交表单失败后如何保留已经填写的信息_php技巧

本文介绍PHP提交表单失败后如何保留填写的信息一些方法总结,其中最常用的就是使用缓存方式了,这种方法如果网速慢是可能出问题的,最好的办法就是使用ajax了. 1.使用header头设置缓存控制头Cache-control. PHP代码如下: header('Cache-control: private, must-revalidate'); //支持页面回跳 2.使用session_cache_limiter方法. PHP代码如下: session_cache_limiter('private,

10个不错的CSS3表单教程

CSS3的出现,为制作更好的网页表单带来无数新的可能.在本文中,我收集了10种运用新技术CSS3,制作非常棒的表单的教程.HTML5 和 CSS3表单 HTML5引进了类似诸如滑动条.数字旋转器.日期选择自定义这些实用的新表单元素.该教程会教你怎样用HTML制作表单,并且和CSS3相得益彰.它能够将CSS3和HTML5巧妙地结合在一起. 2. 无图片和JavaScript的 CSS3 表单 虽然这个教程是法语的,但是效果出人意料.对于不会法语的读者,只需要找到源代码,并充分利用它. 3. 使用

在Activiti中集成JPA(解决动态表单生成的大量数据)

1. 为何集成JPA 在<比较Activiti中三种不同的表单及其应用>一文中介绍了不同表单的特点以及表现形式,相信这是每个初学者都会面临表单类型的选择. 如果选择了使用动态表单那么将面临一个比较"严峻"的问题--大数据量,我们知道动态表单的内容都保存在一张表中(ACT_HI_DETAIL),我们也清楚动态表单中每一个Field都会在该表中插入一条记录,假如一个流程共有20个字段,这个数据量大家可以计算一下,每天多少个流程实例,每个月.每年多少? 日积月累的大数据会影响系统

让你的表单升级到CSS3和HTML5客户端验证

今天我们一起来看看如何创建一个实用并且功能强大的表单,表单使用如今最热门的技术HTML5和css3来创建,并且可以通过HTML5进行客户端验证. 第一步:策划表单功能 首先,我们得为我们的表单策划一下该有什么功能,用什么形式表现.在这个示例中,我们就制作一个比较简单的留言表单.需要的功能如下: 名称 电子邮件 网站地址 提交按钮 我们都希望用户能够填写正确的信息再提交,要实现这一点,我们可以使用HTML5客户端验证新技术.那怎么样使用这个功能呢?在这里简单的使用服务器验证,不做进一步的深入了解.

教程:让你的表单升级到CSS3和HTML5客户端验证

中介交易 SEO诊断 淘宝客 云主机 技术大厅 今天我们一起来看看如何创建一个实用并且功能强大的表单,表单使用如今最热门的技术HTML5和css3来创建,并且可以通过HTML5进行客户端验证. 查看预览 第一步:策划表单功能 首先,我们得为我们的表单策划一下该有什么功能,用什么形式表现.在这个示例中,我们就制作一个比较简单的留言表单.需要的功能如下: 名称 电子邮件 网站地址 提交按钮 我们都希望用户能够填写正确的信息再提交,要实现这一点,我们可以使用HTML5客户端验证新技术.那怎么样使用这个

ASP.NET Aries 入门开发教程9:业务表单的开发

前言: 经过前面那么多篇的列表的介绍,终于到了大伙期待的表单开发了. 也是本系列的最后一篇文章了! 1:表单页面的权限设置与继承 对于表单页面,权限的设置有两种: 1:你可以选择添加菜单(设置为不显示)并配置权限. 2:不设置权限,继承自父页面. 因此,如果你单独打开一个没有单独设置权限的页面,得到的效果就是: 2:简单单表的开发Demo 1:新建ArticleEdit.html html是从UserEdit.html Copy过来简单调整的,毕竟为了统一样式. 当然你也可以自定义样式,那样的话

Web注册表单设计样式的研究(下)

我们把更多关键表单单独开来(例如校验表单)从而关注注册表单.然后我们分别完成每个被选择网站的注册表单并且分析这些表单的设计方法.以下我们介绍这个研究的第二部分--关于100个流行网站web表单的调研结果. 请注意这个文章不是关于校验表单--那是另外一个讨论的话题,我们把它独立开来看待成一个即将要讨论的文章.我们要感谢Wufoo为我们提供构架来引导我们的调查. 3.表单的功能性 在研究的第一部分里,我们已经仔细考虑过注册链接和注册表单的布局和视觉表现形式.但是如果表单不能正常工作的话设计的多漂亮都

网页注册表单设计原则

如果你想最大化你的服务所带来的效益,你就必须最大化你网站表单的成功率.仅仅简单的让用户在你网站上注册是不够的,除非你有能够让访问你网站的人一看就映像深刻的点子.为了让服务达到最大化的体现,我们设计师需要提供用户一个良好的用户体验.我们需要邀请用户,为他们描述服务产品有多少好,给他们解释为什么他们需要填那些表单并且暗示他们会因此得到利益的回报.当然,我们也应该做的非常方便让用户来参与. 但是设计有效的页面表单不是件容易的事情.有个不争的事实就是:没人喜欢填表单--无论是线上还是线下的.因此,作为设