我试图将我的Ruby on Rails应用程序连接到Microsoft SQL Server 2008中的遗留数据库。我浏览了不同的教程,页面,帮助页面和问题页面,仍然无法使其工作。连接到SQL Server(从Ubuntu):[RubyODBC]无法分配SQLHENV
我使用:
- Ubuntu的业力
- 的Rails 2.3.5
- 的Ruby 1.8.7
- 的ActiveRecord-ODBC适配器2.0
- 的ActiveRecord - SQLSERVER适配器2.3
- dbd-odbc 0.2.5
- dbi 0.4.3
我也已经安装:
- freetds的0.82-6
- tdsodbc 0.82-6
- SQSH 2.1-8build1
- libodbc-ruby1.8的0.9997-2(也试图与0.9995 0.9998和)
- 的unixODBC 2.2.11-16ubuntu1
我设法ŧ用tsql,sqsh和isql连接到数据库。但不能通过irb或通过导轨连接。每当我尝试,我得到以下错误:
DBI::DatabaseError: **INTERN (0) [RubyODBC]Cannot allocate SQLHENV**
from /var/lib/gems/1.8/gems/dbd-odbc-0.2.5/lib/dbd/odbc/driver.rb:36:in `connect'
from /usr/lib/ruby/1.8/dbi/handles/driver.rb:33:in `connect'
from /usr/lib/ruby/1.8/dbi.rb:142:in `connect'
from (irb):4
这并不重要,如果我使用ODBC适配器或SQL适配器,因为它总是在DBI驱动程序失败。任何想法可能是错误的?
我有正确定义的odbc.ini,odbcinst.ini和freetds.conf文件。他们正在使用所有其他命令来连接(isql,tsql,sqsh)。
请帮我或指点我的地方,可能会帮助我! =)
PS:我已经按照没有太大的成功,下面的页面(其中包括):
- wiki.rubyonrails.org/database-support/ms-sql?s[]=sql & s [] = server
- piao-tech.blogspot.com/2008/02/using-activerecord-with-microsoft-sql.html
- lambie.org/2008/02/28/connecting-to-an- mssql-database-from-ruby-on-ubuntu/
- stackoverflow.com/questions/1419397/rubyodbc-cannot-allocate-sqlhenv
谢谢,但不幸的是,在这种情况下这不是一个选项。 =( – simaob 2010-01-21 09:41:48