gpt4 book ai didi

sqlite - 在 SQLite(或 Postgres)中,你能拥有一个行元素数量可变的表吗?

转载 作者:行者123 更新时间:2023-11-29 12:39:05 33 4
gpt4 key购买 nike

我正在创建一个包含多种事件的事件表。让我们假设“慢跑”类型的事件将包含元素 a、b 和 c,而“足球”的事件将包含元素 a、d 和 e。我可以创建一个表中每列的行元素取决于该列的类型?我考虑过为每种事件类型创建一个表或为每个事件的选项创建一个包含行的表,但是会有很多事件类型所以使用起来似乎很浪费许多表格或留空许多行。

最佳答案

你不能创建这样的表,它不是允许“varargs”的数据库的本质。这就是我们在数据库中建立关系来对此类事物建模的原因。

对于一个邪恶的 quickhack,您可以将可变数量的参数以特定格式存储在一列中,然后再次解析它。类似于“a:foo|e:bar|f:qux”。不要这样做,它会在大约 1 天后失控。

我支持 James 的提议:重新设计您的 table 。它应该看起来像这样。

Table: Activitiesid|activity0|jogging1|football2|...Table: ElementsOfActivitiesid|activity_id|element0|0|a1|0|b2|0|c3|1|a4|1|d5|1|e

查找“规范化”(例如 http://en.wikipedia.org/wiki/Database_normalization)

关于sqlite - 在 SQLite(或 Postgres)中,你能拥有一个行元素数量可变的表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5226395/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com