我有一个Ruby on Rails项目,我是一个托管服务器上开发,但已经决定与我的本地Windows机器上工作。Ruby on Rails的连接问题
要开始我想我会确保我可以把我的模型从旧的项目,并把它们放到一个新的项目,然后在控制台对它们进行查询。这失败了。
编辑以反映更准确的问题: rails建立以查询我的模型的连接只能运行一个查询,然后为所有后续查询提供“未连接”异常。任何人都知道发生了什么事?我检查了我的配置,很多。如果在MySQL服务器上有一些我不知道的信息,我愿意看看。
堆栈跟踪:
Price.find(1)
ActiveRecord::StatementInvalid: Mysql::Error: query: not connected: SHOW FIELDS FROM `prices`
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:212:in `log'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/mysql_adapter.rb:320:in `execute'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/mysql_adapter.rb:466:in `columns'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/base.rb:1271:in `columns'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/base.rb:1279:in `columns_hash'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/base.rb:1578:in `find_one'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/base.rb:1569:in `find_from_ids'
from c:/Program Files/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/base.rb:616:in `find'
from (irb):2
我核实,我的MySQL数据库正在接受连接,并且具有我所期望的数据和结构。我已经仔细检查了我的连接等。任何人都可以点亮灯光吗?
你在督促,开发或测试运行?如果你改变这个,会发生什么? – marcgg 2009-08-27 20:23:07
可连接,查询失败 >>需要 “的MySQL” => [] >> testconn = Mysql.real_connect( “本地主机”, “lco_admin”, “****”, “lastcall_dev”) =># >> testconn.get_server_info => “5.1.37社区” >> testconn.host_info => >> testconn.list_tables => [ “bar_schedules” “通过TCP/IP本地主机” , “酒吧”, “bars_features”, “饮料”, “功能”, “价格”, “复发”, “special_schedules”, “特价”, “时间跨度”] >> testconn.query( “SELECT * FROM价格” ) Mysql的::错误:查询:7::未从(IRB)连接 在'查询” ˚F rom(irb):7 –
marr75
2009-08-27 20:30:25
我遇到了与您@ marr75完全相同的问题。如果我能解决这个问题,我一定会发布到这里! – jonsidnell 2009-08-28 00:39:57