gpt4 book ai didi

ruby-on-rails - 对于与数据库无关的超大文本字段,我可以使用什么数据类型?

转载 作者:太空狗 更新时间:2023-10-30 01:50:57 25 4
gpt4 key购买 nike

在我的 Rails 应用程序中,我想将 places 列字段的地理范围存储在数据库中。例如,纽约的边界表示为多边形:数组的数组。

我已经声明我的模型序列化多边形,但我不确定是否应该像这样存储它们。这些序列化多边形的大小很容易超过 100,000 个字符,而 MySQL 只能存储大约 65000 characters。在标准文本字段中。

现在我知道 MySQL 也有一个 LONGTEXT 字段。但我真的希望我的应用程序与数据库无关。 Rails 如何自己处理这个问题?它会自动切换到 LONGTEXT 字段吗?当我开始使用 PostgreSQL 时会怎样?

最佳答案

此时我建议您问问自己 - 这些数据是否需要存储,或者应该以这种格式存储在数据库中?

我提出了 2 种可能的解决方案:

  1. 将多边形存储在文件系统中,并从数据库中引用它们。如此大的数据项在数据库中几乎没有用处——将它们作为文本进行查询实际上毫无意义。文件系统擅长存储文件 - 使用它。

  2. 如果您确实需要数据库中的这些多边形,请将它们存储为规范化数据有一个名为 polygon 的表和另一个名为 point 的表,反序列化多边形并以反射(reflect)数据库预期使用方式的方式存储它。

希望对您有所帮助。

关于ruby-on-rails - 对于与数据库无关的超大文本字段,我可以使用什么数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14733529/

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