首发于自己的网站:Ruby 访问 SQL Server 数据库的简单配置
因为工作需要,要分析存放在 SQL Server 上的数据,所以不得不研究一下如何使用 Ruby 访问 SQL Server,发现其实还是很简单的:
我参考的是FreeTDS 安装这个教程:
解压编译安装:
./configure --prefix=/usr/local/freetds && make && sudo make install
我看Mac OS X 上 Ruby 连接 SQL Server这篇文章介绍,还需要安装 unixODBC,DBI,DBI-ODBC 等等,安装和配置起来超麻烦,还需要配置 FreeTDS,我果断的放弃了。我找到了一个新的项目Tiny_TDS,安装和使用非常简单,推荐使用:
sudo gem install tiny_tds -- --with-freetds-dir=/usr/local/freetds
用 tiny_tds 访问 SQL Server 很简单:
require 'tiny_tds' client = TinyTds::Client.new(:username => 'fankai', :password => 'fankai', :host => '192.168.0.1', :database => 'test') result = client.execute("select top 10 * from User"); result.each do |row| puts row end
这也非常简单,参考这个教程Using TinyTDS:
gem install activerecord-sqlserver-adapter
配置 database.yml 如下:
development: adapter: sqlserver host: mydb.net database: myapp_development username: sa password: secret