在Postgre Rails app的database.yml中的schema_search_path是否会忽略大小写?

时间:2008-10-30 17:06:45

标签: ruby-on-rails

我必须连接到具有名为“Financeiro”的架构的旧数据库。   我将我的database.yml设置为:

... 
schema_search_path: Financeiro 
... 

当activerecord尝试查找某些内容时,我收到以下错误:

ActiveRecord::StatementInvalid: RuntimeError: ERROR     C3F000  Mschema "financeiro" does not exist F.\src\backend\catalog\namespace.c      L2898   Rassign_search_path: SET    search_path TO Financeiro from 
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/abstract_adapter.rb:147:in `log' 

请注意,在错误消息中我得到financeiro(downcase)。 如果我将架构重命名为financeiro downcase,它运行良好。但事实并非如此 可能在生产环境中。 谢谢。

1 个答案:

答案 0 :(得分:0)

使用引号尝试“Financeiro”。如果它进入SQL,它应该工作。 通常,SQL标准要求标识符不区分大小写,除非引用。 您可能需要做一些特殊的引用才能将双引号从yml文件传递到实际的SQL。我根本不知道Rails / Ruby。

相关问题