Oracle データベースと対話したい Ruby クラスがあり、それを行うために Oracle Java クラスを使用したいと考えています。
しかし、以下のクラスのインスタンスを作成すると、エラーが発生します。
NameError: 行 DriverManager.register_driver の Person:Class の未定義のローカル変数またはメソッド `oracle'
行をコメントアウトすると:
require 'lib/ojdbc6-11.1.0.7'
DriverManager.register_driver oracle.jdbc.OracleDriver.new
以下の行のコメントを外します (Sybase jar を使用するため)。このエラーは発生せず、データベースに接続できます。
#require 'lib/jconn2'
#DriverManager.register_driver com.sybase.jdbc3.jdbc.SybDriver.new
サンプルクラス:
require 'java'
require 'lib/ojdbc6-11.1.0.7'
#require 'lib/jconn2'
java_import java.sql.DriverManager
java_import java.sql.SQLException
class Person
DriverManager.register_driver oracle.jdbc.OracleDriver.new
#DriverManager.register_driver com.sybase.jdbc3.jdbc.SybDriver.new
def initialize(my_id)
@my_id = my_id
end
end