Mysql 以下情况的表结构应该是什么
我有一种情况,我需要存储“错误类型”,它有以下选项 我想知道创建表“Error”的最佳方法是什么 因此,我要么选择一个“VARCHAR”数据类型并存储值,如“1,3,4”(逗号分隔),如果选择了“起飞、细节和图例”,并在进入视图时对其进行解析 或 为表中数据类型为“TINYINT”的每个字段单独设置一列,如“IsTakeOff”、“IsSpecifications”、“Details”等 请指教Mysql 以下情况的表结构应该是什么,mysql,Mysql,我有一种情况,我需要存储“错误类型”,它有以下选项 我想知道创建表“Error”的最佳方法是什么 因此,我要么选择一个“VARCHAR”数据类型并存储值,如“1,3,4”(逗号分隔),如果选择了“起飞、细节和图例”,并在进入视图时对其进行解析 或 为表中数据类型为“TINYINT”的每个字段单独设置一列,如“IsTakeOff”、“IsSpecifications”、“Details”等 请指教 谢谢除非您非常确信数字不会增长,否则不要使用多列 否则,使用一个多对多关联表,其中一个表包含项目i
谢谢除非您非常确信数字不会增长,否则不要使用多列
否则,使用一个多对多关联表,其中一个表包含项目id和错误id的列一种方法可能是将其作为int,然后在代码中执行类似于PHP的操作,我不知道您使用的是什么语言,但大多数语言都有一个开关,因此翻译成另一种语言应该不难
$row // The row from the database.
switch ($row['Error_Type'])
{
case ('0'):
{
// Do something.
break;
}
...
}
您可以在这里使用逗号分隔的列,即varchar,因为您知道这里不会增长任何记录。这仅限于5个值。在搜索字段时,可以使用MySQL FIND_IN_SET,这对于这种情况非常有效。在_集中查找_需要两个参数。您的搜索关键字和逗号分隔的字符串。如果id为1的用户选择1、3和4,则可以使用以下命令