【问题标题】:sequel to postgres database data types. Array?postgres 数据库数据类型的续集。大批?
【发布时间】:2015-01-02 00:42:57
【问题描述】:

这是我的 Sequel 迁移文件:

Sequel.migration do
  change do
    create_table(:payloads) do
      primary_key   :id
      String        :url
      String        :requestedAt
      Integer       :respondedIn
      String        :referredBy
      String        :requestType
      String        :parameters
      String        :eventName
      String        :userAgent
      Integer       :resolutionWidth
      Integer       :resolutionHeight
      String        :ip

    end
  end
end

:RequestBy 值是一个空数组。它不是一个字符串,它会导致错误,因为我的表需要一个字符串。 Sequel 中是否有处理空数组的数据类型?是否有一个称为 Array 之类的方法调用将值转换为数组,以便我可以将其插入到我的数据库中?

【问题讨论】:

  • 将类似字段的数组存储为单独的表并通过ID链接两者不是更好吗?
  • 我不知道?如果我将类似字段的数组存储在单独的表中......我将如何存储它?我是否将值称为字符串?大批?数组在 Sequel 中并不像数据类型那样精确吗?
  • 您必须将requestBy 数组(带有ID)存储在另一个表中,然后创建另一个映射paylodrequestBy 的ID 的表。

标签: ruby postgresql sequel


【解决方案1】:

您需要pg_array extension

pg_array 扩展增加了对 Sequel 的支持以处理 PostgreSQL 的 数组类型。

Sequel 测试直接使用 pg_array 扩展。在Sequel source for the PostgreSQL adapter 中搜索'PostgreSQL array handling'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-24
    • 1970-01-01
    • 2014-03-12
    • 1970-01-01
    • 2019-08-14
    • 2016-07-08
    • 2011-11-24
    相关资源
    最近更新 更多