2014-07-03 55 views
1

为什么我得到一个表未找到错误?ActiveRecord表不存在错误

?> >> User.connection.execute("select * from users where rownum = 1") 
=> //successful result 

?> >> User.first 
DEPRECATION WARNING: the object returned from `select_all` must respond to `column_types`. (called from first at C:0) 
ActiveRecord::JDBCError: Table users does not exist 

class User < ActiveRecord::Base 
    establish_connection 'db1' 
    alias_attribute(:site_type_id, :'SITE_TYPE#ID') 
end 
+0

你为什么不用'User.where(“rownum = 1”)。first'? – usha

+0

@Vimsha无关 '?>> >> User.where('rownum = 1') 退步警告:从'select_all'返回的对象必须响应'column_types'。 (从IRB调用,C:/jruby-1.7.10/lib/ruby/1.9/irb/inspector.rb:86) ActiveRecord :: JDBCError:表用户不存在' –

+0

你的用户表迁移是什么喜欢? – user3334690

回答

1

好的,发现问题... ActiveRecord不喜欢ojdbc驱动jar。只要我从OJDBC切换到OracleEnhanced适配器,它就可以工作!