gpt4 book ai didi

mysql - 映射到另一个表(其实际值保存在 MySQL 中)的表的效率

转载 作者:行者123 更新时间:2023-11-29 21:02:49 27 4
gpt4 key购买 nike

我正在开发一个小型调查系统,该系统包括一次插入所有表单数据(将回答大约 90 个问题)。另外,你可以稍后查阅数据。考虑到这一点,我想问使用这样的模式有什么优点:

我在调查中有几个问题有多个复选框(有些有 15 个以上),人们将能够选择多个复选框作为答案,我会将他们选择的所有选项存储在数据库中。我通过在所有这些复选框输入(属于问题)中使用相同的名称属性来实现此目的,如下所示:name="q_01[]"。这里的“问题”(不是真正的问题,更像是性能/存储优化增强)是我不想一遍又一遍地存储相同的值。比如说,如果我有 20 个复选框,并且它们的值(HTML 中的属性 value="Real Value")很长,例如草莓、某物等......等等......,我会复制相同的内容值一遍又一遍,导致空间被浪费。

相反,我想存储一个整数,它将映射到保存实际值的表。这样,我将只存储 4 个字节,而不是(最多)255 个字符作为 VARCHAR。

我听说过这样的系统,但我自己没有做过,而且我不知道任何命名或约定。你们能给我指出正确的方向吗(通过发布示例/youtube 视频或有该视频的页面)?这些表如何命名?我知道外键和关系表的基础知识,所以我知道答案就在那里。

此外,如果您可以包括或给我一个关于如何查询此类表的提示,那就太棒了!

提前感谢您的帮助!

干杯!

最佳答案

如果一个问题有 15 个可能的答案,并且可以相互独立地选择,那么每个可能的答案将成为答案表的一个表列,其列名称如 strawberry , raspberry列的名称不必在数据库本身中表示(尽管它将出现在属于 MySQL 的信息模式列表 https://dev.mysql.com/doc/refman/5.0/en/columns-table.html 中,如果对于高级用例,您可以从软件)。用于获取复选框值的列均为 booleantinyint(1) ;这些值不应包含字符串 strawberry也没有包含 strawberry 的记录的外键.

关于mysql - 映射到另一个表(其实际值保存在 MySQL 中)的表的效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37068505/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com