【问题标题】:Best way to enter complex table to sqlite database将复杂表输入到 sqlite 数据库的最佳方法
【发布时间】:2016-03-01 14:50:04
【问题描述】:

我有这种桌子。

问题是创建这种表的最佳方法是什么? 我应该为每个项目创建一个表,是否可以只创建一个表?

【问题讨论】:

    标签: android mysql database sqlite


    【解决方案1】:

    更新:查看@Emil 下的 cmets。

    按照@Emil 的建议,您应该有 1 个表。

    这应该看起来像,有点像 _id, sort, grade, diameter, length, price1_dol, price1_euros, price2_dol, price2_euros, final,

    注意:我已经将价格列分开了 - 所以你有price1_dolprice1_eurosprice2_dolprice2_euros

    【讨论】:

    • 我只创建了一张表。但我能问你填充这张表的最佳方法是什么吗?我将有大约 70 行
    【解决方案2】:

    确实可以将这些数据放在一张表中。 sortgrade 列似乎唯一标识了一行,因此它们一起可能构成 candidate key。如果是这样,您可以将它们用作主键,或者创建一个新的整数列用作主键。

    您绝对不应该为每个项目创建一个表。数据库模式不应该随着正常使用而改变。只有当您添加、删除或更改数据库中数据的类型时,您才应考虑更改架构。否则,您应该设计和normalize 您的数据库,以便仅通过插入新行而不是新表来增加数据。

    【讨论】:

    • “排序”和“等级”列不能唯一标识一行,您仍然有多个价格、等级等 - 请参阅下面的答案。
    • Zain,告诉我哪两行有相同的sort, grade tuple。
    猜你喜欢
    • 1970-01-01
    • 2010-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 2013-09-15
    相关资源
    最近更新 更多