目前,我正在使用 DataMapper 让 JRuby on Rails 应用程序访问 Oracle 数据库。我想知道是否有一个配置/例程来访问来自不同用户/模式的表,例如:
SELECT * FROM "SCHEMAXY"."TABLEXY";
我已经通过指定模式和表名来实现一个 hack 来完成这项工作,但我怀疑这是一个很好的解决方案。
class Tablexy
include DataMapper::Resource
storage_names[:default] = "SCHEMAXY.TABLEXY"
end
黑客(ish)
# Replace a dot in the name by a quoted one
# so "NAMESPACE.TABLE" gets "NAMESPACE"."TABLE"
module DataMapper
module Adapters
class OracleAdapter
def quote_name(name)
super.gsub('.', '"."')
end
end
end
end
我希望在 DataMapper 中有一个集成的解决方案。