我有一种情况需要存储“错误类型”,其中包含以下选项
我想知道创建表“Error”的最佳方法是什么。
因此,我选择“ VARCHAR ”数据类型并存储“1,3,4”(逗号分隔)等值,如果选择“Take Off,Details and Legend”并在解析时解析它进入视野
OR
为表格中的每个字段设置单独的列,数据类型为“ TINYINT ”,如“IsTakeOff”,“IsSpecifications”,“详细信息”等。
请咨询
由于
答案 0 :(得分:0)
除非您非常确信数字不会增长,否则请勿使用多列。
否则使用多对多关联表 - 一个包含项目ID和错误ID的列
答案 1 :(得分:0)
一种方法可能是将它作为一个int来做,然后在你的代码中做类似这样的PHP,我不知道你使用的语言,但大多数语言有一个开关所以它不应该很难翻译成另一种语言。
$row // The row from the database.
switch ($row['Error_Type'])
{
case ('0'):
{
// Do something.
break;
}
...
}
答案 2 :(得分:0)
你可以在这里使用逗号分隔列varchar,因为你知道没有记录会在这里增长。这仅限于5个值。在搜索字段时,您可以使用MySQL FIND_IN_SET,这对于这种情况非常有效。 FIND_IN_SET将采用两个参数。您的搜索关键字和逗号分隔的字符串。
答案 3 :(得分:0)
如果id为1的用户选择1,3和4,则可以使用以下