ruby-dbi 최신버전을 구해야 한다.
http://rubyforge.org/projects/ruby-dbi/다운받은 것을 앞축을 푼 후 아래의 파일을 찾는다.
dbi-0.1.1.tar\ruby-dbi\lib\dbd\ADO.rb
ADO.rb 의 파일을 ruby가 설치되어 있는 아래의 장소로 복사
X:/ruby/lib/ruby/site_ruby/1.8/DBD/ADO/ADO.rb
(아마도 ADO 디렉토리는 생성해 줘야 할 것이다.)
그런 다음
레일즈어플리케이션의 db 설정파일 railsapp/config/database.yml
development:
adapter: sqlserver
database: database_name
host: DBI:ADO:Provider=SQLOLEDB;Data Source=server_name;Initial Catalog=database_name;User Id=user_name;Password=your_pw_here;
username: user_name
password: your_pw_here
^^ 이렇게 되어있지만 문제가 발생한다면
development:
adapter: sqlserver
database: database_name
host: server_name
username: user_name
password: your_pw_here
만약 로컬db라면 . 으로 대신해도 된디.
development:
adapter: sqlserver
database: database_name
host: server_name,5555
username: user_name
password: your_pw_here
기본 포트외에 설정시 사용법.
MS-SQL 2005 의 SQLNCLI 사용시
development:
adapter: sqlserver
database: database
username: user
password: pwd
host: .\SQLEXPRESS
mode: DBI:ADO
provider: SQLNCLI
추가로 x:\ruby\lib\ruby\gems\1.8\gems\activerecord-1.15.2\lib\active_record\connection_adapters\sqlserver_adapter.rb 를 수정해 줘야 한다.
provider = config[:provider] ? config[:provider].to_s : 'SQLOLEDB'
추가 후 44번째 줄의 내용을 아래와 같이 수정해 준다.
driver_url = "DBI:ADO:Provider=#{provider};Data Source=#{host};Initial Catalog=#{database};User Id=#{username};Password=#{password};"
ODBC로 연결시
development:
adapter: sqlserver
mode: odbc
dsn: Driver={SQL Server};Server=<your server>;Database=<your db>;Trusted_Connection=yes;
좀 더 자세히 참고하고 싶다면.
http://wiki.rubyonrails.org/rails/pages/HowtoConnectToMicrosoftSQLServer