我已成功使用MySQL
连接到Postgres
和'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'
我收到了以下错误。
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
Sequel为微小的tds提供适配器。我该如何使用该适配器?请告诉我如何用续集宝石做到这一点?
我没有得到如何使用续集的小tds,因为续集为tiny_tds提供适配器。
谢谢...
答案 0 :(得分: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'
如果您要连接到MySQL2
DB = Sequel.connect(:adapter => 'mysql2', :user => 'username', :password => "passw0rd", :host => "xxx.xxx.xxx.xxx" , :database => "test_database")
如果要连接到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