解決策を見つけました。
tiny-tdsのインストールはバージョン0.51でした。
最新バージョンにはSSPIが含まれているため、次のようになります。
gem install tiny_tds --version ">= 0.6.0.rc1"
これには、ユーザー名/パスワードを指定する必要はなく、デフォルトでSSPIを使用します。
例として:
require 'tiny_tds'
sql = "SELECT name from sys.databases"
client = TinyTds::Client.new(:dataserver => "myserver", :database => "mydatabase")
result = client.execute(sql)
results = result.each(:symbolize_keys => true, :as => :array, :cache_rows => true, :empty_sets => true) do |rowset| end
#THIS IS TO OUTPUT IT TO THE CONSOLE
for i in (0..result.fields.length)
printf("%14s", result.fields[i])
end
for j in (0...result.affected_rows)
puts ""
for i in (0...result.fields.length)
printf("%14s",results[j].at(i))
end
end
SSPIを使用してデータベースにアクセスし、データベース名のリストを出力します。