1

我要查询的表名为cache.dashboardstats

我的模型是:

class Dashboard < Sequel::Model(:dashboardstats)
 set_schema do
    set_primary_key :dashboardstatid
  end
end

这创建了一个select * from "dashboardstats";

如何定义“缓存”的所有者/模式,以便我的查询变为:

select * from cache."dashboardstats";

4

1 回答 1

4

您可以在符号内使用双下划线,或使用一种限定方法来表示限定标识符:

:cache__dashboardstats
Sequel.qualify(:cache, :dashboardstats)
:dashboardstats.qualify(:cache)

您可以在模型代码中使用它,例如:

class Dashboard < Sequel::Model(:cache__dashboardstats)
end

请注意,我遗漏了您的 set_schema 调用。除非您正在调用 create_table 或类似方法,否则您不应该调用 set_schema,否则它什么也不做。set_schema 里面的 set_primary_key 并不像你想的那样,Sequel 通常可以正确确定主键,所以一般不会手动指定。

于 2012-08-10T15:34:35.770 回答