Sequel :: AdapterNotFound:LoadError:无法加载这样的文件 - win32ole

Ash*_*ini 4 ruby database ruby-on-rails ruby-on-rails-3 sequel

我成功地能够连接到数据库MySQLPostgres使用数据库'sequel'.

我想从Ubuntu 12.04连接到SQL Server数据库到Windows机器.使用tiny-tds我们可以做到这一点,但我想用'续集'进行连接

宝石安装

gem 'dbi'
gem 'tiny_tds'
gem 'sequel'
gem "win32ole-pp"
gem "rubysl-win32ole"
gem 'activerecord-sqlserver-adapter'
Run Code Online (Sandbox Code Playgroud)

我收到了以下错误.

1.9.3p448 :007 >   require 'win32ole-pp'
LoadError: cannot load such file -- win32ole-pp

1.9.3p448 :008 > require 'rubysl-win32ole'
 => false 

1.9.3p448 :001 > DB = Sequel.ado(:database => 'test_database', :host => 'xxx.xxx.xxx.xxx', :user => 'username', :password => 'password', :provider => 'SQLNCLI10')
    Sequel::AdapterNotFound: LoadError: cannot load such file -- win32ole
Run Code Online (Sandbox Code Playgroud)

Sequel为微小的tds提供适配器.我该如何使用该适配器?请告诉我如何用续集宝石做到这一点?

我没有得到如何使用续集的小tds,因为续集为tiny_tds提供适配器.

谢谢...

Ash*_*ini 11

最后我可以在续集的帮助下从ubuntu 12.04机器连接到远程MSSQL数据库.Sequel使用tiny_tds连接到SQL Server数据库.这里xxx.xxx.xxx.xxx是远程机器的ip地址.没必要win32ole

Sequel为MySQL2,Postgres,SQL Server和Tiny tds提供适配器.

宝石必备

gem 'tiny_tds' #For SQlServer
gem 'mysql2' #For MySQL
gem 'sequel'
Run Code Online (Sandbox Code Playgroud)

如果您正在连接到MySQL2

DB = Sequel.connect(:adapter => 'mysql2', :user => 'username', :password => "passw0rd", :host => "xxx.xxx.xxx.xxx" , :database => "test_database")
Run Code Online (Sandbox Code Playgroud)

如果要连接到SQL Server

DB = Sequel.connect(:adapter => 'tinytds', :user => 'username', :password => "passw0rd", :host => "xxx.xxx.xxx.xxx" , :database => "test_database")

post = DB.from(:test_table)

post.all
Run Code Online (Sandbox Code Playgroud)