【问题标题】:How can I create a table in MySql?如何在 MySql 中创建表?
【发布时间】:2021-07-28 18:08:38
【问题描述】:

我有这个 JSON 文件,我正在尝试创建一个包含这些信息的表。

{
    "name": "John Smith",
    "sku": "20223",
    "shipTo": {
        "name": "Jane Smith",
        "address": "123 Maple Street",
        "city": "Pretendville",
        "state": "NY",
        "zip": "12345"
    },
    "billTo": {
        "name": "John Smith",
        "address": "123 Maple Street",
        "city": "Pretendville",
        "state": "NY",
        "zip": "12345"
    }
}

我在 mysql 数据库中尝试做的事情

CREATE TABLE t1(
        name VARCHAR(200),
        sku VARCHAR(200),
        shipTo // what type should I use to get shipTo data ie name, address, city ...?
        billTo // same thing here.
        );

【问题讨论】:

  • 显示的 JSON 是否是完整的模式,并且在另一个 JSON 中可能不会出现其他属性?根、shipTo 和 billTo 中的name 是否始终相同? shipTo 和 billTo 中的地址数据是否始终相同?您至少需要 2 个表才能以标准化形式存储此数据(最佳 - 最多可能 6 个表)。当然,您可以将这个 JSON 原样存储在 JSON 类型的一列中。但在这种情况下,任何数据处理都会出现问题。

标签: c# mysql json database


【解决方案1】:

您可以使用 MySQL JSON 数据类型。请前往this link 获取详细解释的示例。

CREATE TABLE table_name (
    ...
    json_column_name JSON,
    ... 
);

希望我没听错。

【讨论】:

    猜你喜欢
    • 2018-09-07
    • 2020-08-15
    • 2010-12-25
    • 1970-01-01
    • 2012-11-26
    • 2017-01-10
    • 2019-03-06
    • 2015-03-19
    • 1970-01-01
    相关资源
    最近更新 更多