2013-12-19 57 views
0

由於我在Windows筆記本電腦上使用的工具都無法從SQL Server中導出體面的CSV文件來挽救他們的生命,所以我想我會在幾行Ruby中滾動自己的文件。需要老版本的寶石

因爲我從世紀之交觸及SQL Server版本,所以必須使用老版本的activerecord-sqlserver-adapter。據我可以告訴我正確地做到這一點,並應該使用activerecord的activerecord ~> 2.2.32-3-stable分支activerecord-sqlserver-adapter,但我得到一個錯誤,抱怨它是Unable to activate activerecord-sqlserver-adapter-3.2.12, because activerecord-2.2.3 conflicts with activerecord (~> 3.2.0)。這裏是我的代碼(沒有任何具體涉及到的CSV):

#!/usr/bin/env ruby 

gem 'activerecord', "~> 2.2.3" 
gem 'activerecord-sqlserver-adapter', github: 'arthrex/activerecord-sqlserver-adapter', :branch => '2-3-stable' 

require 'activerecord' 
require 'activerecord-sqlserver-adapter' 
require 'pry' 

ActiveRecord::Base.establish_connection(
    :adapter => "sqlserver", 
    :mode => "odbc", 
    :username => "c3", 
    :password => "92641", 
    :dsn => "Connect3" 
) 
ActiveRecord::Base.table_name_prefix = 'dbo.' 

class Dwnld_Hdr < ActiveRecord::Base 
end 

pry 

爲什麼想在第一時間加載activerecord (~> 3.2.0)

回答

1

我認爲在這種情況下,你可能會使用bundler,怎麼那麼它將允許你運行specific gem sets

閱讀herehere以獲取有關如何在非軌道使用捆綁的想法項目

+0

我其實先試過,[它沒有工作](http://stackoverflow.com/q/20688914/241142)。我希望這種方法比克服[我在普通Gemfile方法中遇到的問題]更容易(http://stackoverflow.com/q/20688914/241142)。當然,這很可能會遇到同樣的問題,但將其埋藏得更深一些。 – iconoclast