通过dbi连接ruby sybase,在连接字符串中使用本机sybase驱动程序类名称的问题

时间:2015-02-27 05:49:53

标签: ruby sybase dbi

任何人都使用Ruby中的sybase db成功连接到dbi

我似乎无法为此构建连接字符串。

dbh = DBI.connect('dbi:<xyz>:<db-name>','<user-name>', '<pwd>' )

以下是我得到的错误格式 -

 C:/Ruby187/lib/ruby/gems/1.8/gems/dbi-0.4.5/lib/dbi.rb:300:in `load_driver': Unable to load driver '<xyz>' (underlying error: uninitialized constant DBI::DBD::<db-name>) (DBI::InterfaceError)
from C:/Ruby187/lib/ruby/1.8/monitor.rb:242:in `synchronize'
from C:/Ruby187/lib/ruby/gems/1.8/gems/dbi-0.4.5/lib/dbi.rb:242:in `load_driver'
from C:/Ruby187/lib/ruby/gems/1.8/gems/dbi-0.4.5/lib/dbi.rb:160:in `_get_full_driver'
from C:/Ruby187/lib/ruby/gems/1.8/gems/dbi-0.4.5/lib/dbi.rb:145:in `connect'
from C:/Simple/algo/db.rb:13

当我通过另一个rails应用程序连接时,我使用原生sybase drivers to连接到sybase db,但似乎找不到它的名字。 (如果有办法在使用某些command / global variable或其他内容的工作rails应用程序中查找数据库驱动程序名称,请告诉我。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

使用SybSQL代替DBI做了这件事。

query=SybSQL.new({'S'=>@@server,'U'=>@@user,'P'=>@@passwd})