0

我有一个 Ruby 类,我想与一个 oracle 数据库通信,并且我想使用 Oracle java 类来完成它。

但是当我创建下面的类的一个实例时,我得到了错误:

NameError:未定义的局部变量或方法“oracle”为 Person:Class 在行 DriverManager.register_driver

如果我注释掉这些行:

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
4

1 回答 1

0

尝试使用

DriverManager.registerDriver Java::oracle.jdbc.driver.OracleDriver.new
于 2011-11-19T21:13:43.113 回答