ActiveRecordを試してみた

PostgreSQLにpostgres-prでつないでみる。

require 'rubygems'
require 'activerecord'

ActiveRecord::Base.establish_connection(
  :adapter  => "postgresql",
  :host     => "localhost",
  :database => "postgres",
  :username => "postgres",
  :password => "postgres",
  :encoding => "SJIS"
)

class UserData < ActiveRecord::Base
  set_table_name "user_data"
  set_primary_key "user_id"
end

UserData.find(:all).each do |user_data|
  puts "#{user_data.user_id} #{user_data.user_account}"
end

JDBCだとこんな感じ。

require 'rubygems'
require 'activerecord'
require 'kconv'

ActiveRecord::Base.establish_connection(
  :adapter  => "jdbcpostgresql",
  :host     => "localhost",
  :database => "postgres",
  :username => "postgres",
  :password => "postgres"
)

class UserData < ActiveRecord::Base
  set_table_name "user_data"
  set_primary_key "user_id"
end

UserData.find(:all).each do |user_data|
  puts "#{user_data.user_id} #{user_data.user_account.kconv(Kconv::SJIS, Kconv::UTF8)}"
end

Windowsでコンソールに出力させている関係上、kconvSJISへの変換が入っているが、実システムではUTF-8を使うので不要だね。