首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DBI +ruby在涉及到绑定程序时失败

DBI +ruby在涉及到绑定程序时失败
EN

Stack Overflow用户
提问于 2012-05-07 12:13:46
回答 1查看 919关注 0票数 2

我使用unixodbc使用dbiruby-odbc宝石连接到Exasol,运行良好,加载如下:

代码语言:javascript
复制
require 'dbi'
require 'odbc_utf8'

当我将Bundler添加到混合时,ruby似乎无法找到odbc配置:

代码语言:javascript
复制
Could not load driver (undefined method `driver_name' for ODBC:Module)
/usr/lib/ruby/gems/1.9.1/gems/dbi-0.4.5/lib/dbi.rb:318:in `rescue in load_driver'
/usr/lib/ruby/gems/1.9.1/gems/dbi-0.4.5/lib/dbi.rb:242:in `load_driver'
/usr/lib/ruby/gems/1.9.1/gems/dbi-0.4.5/lib/dbi.rb:160:in `_get_full_driver'
/usr/lib/ruby/gems/1.9.1/gems/dbi-0.4.5/lib/dbi.rb:145:in `connect'

不管我是通过Bundler.require (在Gemfile中使用gem 'ruby-odbc', require: 'odbc_utf8' )还是通过require 'bundler/setup'require 'odbc_utf8'来要求它,这都无关紧要。

这就是我试图连接的方式:

代码语言:javascript
复制
DBI.connect('DBI:ODBC:exa', config['username'], config['password'])

如果重要的话,这就是我的.odbc.ini的样子:

代码语言:javascript
复制
[exa]
Driver = /opt/EXASolution_ODBC-4.0.8/lib32/libexaodbc-uo22.so
EXAHOST = 192.168.235.84..86:8563

编辑:它没有绑定程序的工作方式只在Ruby1.9.3中这样做。在我看来,这是一个范围问题,因为driver_name是作为参数传递给引发异常的方法的变量。

EN

回答 1

Stack Overflow用户

发布于 2015-01-12 14:57:44

请尝试安装: gem安装dbd-odbc

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10481881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档