Ruby cucumber を使用してアプリケーションを自動化しています。DSN ODBC ドライバーと「dbi」を使用して、SQL Server 2012 DB に接続しています。正常に接続され、レコードを取得できます。しかし、Ruby スクリプトでテーブルから Unicode (utf-8) データを取得しようとすると、文字化け ( ???????
) が発生します。
DB からユニコード文字を取得するのを手伝ってください。
以下は、DB に接続してデータを取得するために使用したコードです。
# encoding: UTF-8
require 'rubygems'
require 'DBI'
def run_select_query_verifyText(query,verifyString)
connection = nil
status = false
begin
#puts "Connecting to DataBase"
connection = DBI.connect('DBI:ODBC:ODBCDriver','test','xxxxx')
rescue DBI::DatabaseError => e
puts "An error occurred"
puts "Error code: #{e.err}"
puts "Error message: #{e.errstr}"
return false
end
#execute sql query
dataset = connection.execute(query)#.fetch_all
dataset.each do |row|
row.each do |data|
puts "cell data is #{data}"
if data == verifyString then
status = true
break
end
end
if status then
break
end
end
connection.disconnect
return status
end