NameError:尝试在Ruby中注册oracle驱动程序时未定义的局部变量或方法“oracle”
我有一个Ruby类,我想与oracle数据库对话,我想使用oracle java类来实现这一点 但是当我创建下面类的实例时,我得到了一个错误: NameError:Person:Class的未定义局部变量或方法“oracle” 排队 DriverManager.register\u驱动程序 如果我注释掉这些行:NameError:尝试在Ruby中注册oracle驱动程序时未定义的局部变量或方法“oracle”,ruby,variables,local,undefined,nameerror,Ruby,Variables,Local,Undefined,Nameerror,我有一个Ruby类,我想与oracle数据库对话,我想使用oracle java类来实现这一点 但是当我创建下面类的实例时,我得到了一个错误: NameError:Person:Class的未定义局部变量或方法“oracle” 排队 DriverManager.register\u驱动程序 如果我注释掉这些行: require 'lib/ojdbc6-11.1.0.7' DriverManager.register_driver oracle.jdbc.OracleDriver.new 并取消
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
尝试使用
DriverManager.registerDriver Java::oracle.jdbc.driver.OracleDriver.new
谢谢你把它整理好了。有趣的是,驱动程序启动com时不需要这样做。