【问题标题】:Proper sql table structure with multiple values of a field具有多个字段值的正确 sql 表结构
【发布时间】:2011-12-05 16:19:49
【问题描述】:

我一直在使用一些基本的 sql 数据库,并且正在设计一个应用程序,并且想知道在 1 个字段中有多个值。我习惯了关系数据库模型,想知道 sql 是否支持这一点。这是一个示例分隔记录: 零件编号:part1 描述:第一部分 选项:opt1|opt2|opt3 子选项:SA1~SA2~SA3|SA2|SA3~SA4

在U2,我会像这样写唱片。在 sql 中,您将有 3 个表,其以下值是否正确?

零件表: 零件编号:part1 描述:第一部分

零件选项表: 编号:1 零件编号:part1 选项:opt1

ID:2 零件编号:part1 选项:opt2

ID:3 零件编号:part1 选项:opt3

零件选项子选项表: 编号:1 零件编号:part1 选项:opt1 子选项:SA1

ID:2 零件编号:part1 选项:opt1 子选项:SA2

ID:1 零件编号:part1 选项:opt1 子选项:SA3

....等等。

我有 2 个问题。 sql可以处理记录中1个字段中的多个值吗?基本上将数组保存在记录中或将多维数组保存在记录中。我知道你可以写和读,但是你可以对数组中的元素进行选择吗?

我在这里描述的处理我描述的示例数据结构的正确方法是什么?

提前感谢您的帮助。如果有这方面的好文档,请提供链接。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    恐怕 MySQL 不支持单个列中的多个属性。我建议你使用 N:N 关系来做这些事情。在某些情况下,如果您不需要使用这些值来进行连接,那么带有多个项目的 VARCHAR/TEXT 字段用字符串分隔也是可以的("one|two|three")...

    【讨论】:

      【解决方案2】:

      是的,mysql中单个字段中的多个值被称为:-set
      你可能会失望,
      数组格式的值并不是真正的故事

      如果您正在寻找多维数组,
      这是一个:- XML

      【讨论】:

        猜你喜欢
        • 2019-11-09
        • 2013-04-14
        • 1970-01-01
        • 1970-01-01
        • 2011-12-25
        • 1970-01-01
        • 2018-05-12
        • 1970-01-01
        • 2015-11-04
        相关资源
        最近更新 更多