php - 数据库表设计困境,复选框一大堆?

标签 php mysql html database-design cakephp

我想首先感谢你们,你们对我很好。

我会直接进入问题。

拥有一个超过 400 列的表,这很糟糕吗?

我的 Web 表单主要由需要复选框回答的问题组成。 复选框总数最多可达 400 个。

我实际上对其中一个表单进行了建模,并将每个复选框放在一列中(花了我几个小时才完成)。 由于我不熟悉数据库设计,所以我觉得那不是正确的方法。

所以我在某处读到有人使用序列化函数将一组复选框作为文本存储在一列中。

我只想知道存储这些复选框的最佳方式。

还有更多信息,我将对这些表使用 cakephp orm。

再次感谢。

我的数据库看起来像这样

表:患者,表:admitForm,表:SomeOtherFOrm

每个表单表都会有一个 PatientId

正如我上面所说,我首先尝试为每个表单创建一个表,然后将每个复选框放在一列中。这花了我很长时间。

所以我读了一些文章,其中每个问题序列化复选框是个好主意

所以我问将是一个很好的方法。

最佳答案

对于有多个选项的问题,只需添加另一个表格即可。

还没有人问过您的问题是您是否需要进行数据挖掘或将这些复选框问题的答案放入查询的 where 子句中。如果您不需要对查看这些答案中包含的数据的数据进行任何查询,那么您可以简单地将它们序列化为几个字段。您甚至可以将它们打包成数字。 (如果你打包数据,所有追随你的人都会恨你)

这是我对模式的想法。

The Database Schema Pictorial

关于php - 数据库表设计困境,复选框一大堆?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8318451/

相关文章:

html - 为什么这个 div 没有正确居中?

php - 使用 php 或 javascript 将用户登录到受 Apache 基本身份验证 (htaccess/htpasswd) 保护的目录

mysql - Insert based on Another Insert with mysql 插入

mysql - SQL UPDATE 查询耗时过长

c# - 如何在 Entity Framework 中获取列的默认值

html - 当父图像溢出时定位图像 : hidden

php - 使用 mySQL 表中的 JOIN 子句获取确切的作者和文章

php - ":"在 PHP 中是什么意思?

javascript - 现有 PHP/JS 代码在导入语句中显示错误

html - 背景图片有时不显示