#DB接続情報 class DBInfo attr_accessor(:name, :user, :pass) def initialize(n, u, p) @name, @user, @pass = n, u, p end end require 'win32ole' #oo4o class Oracle def initialize #セッションオブジェクトを作る @session = WIN32OLE.new('OracleInProcServer.XOraSession') end def connect(dbinfo) #DBオブジェクトを作る @database = @session.OpenDatabase(dbinfo.name, dbinfo.user + '/' + dbinfo.pass, 0) end def execute(sql) #ダイナセットオブジェクトを作る @dynaset = @database.CreateDynaset(sql, 8) end end #メイン関数 def mein dbinfo = DBInfo.new('dbname', 'username', 'password') ora = Oracle.new ora.connect(dbinfo) p ora.execute('select sysdate from dual').Fields(0).Value end |