首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用JRuby和JDBC连接到Oracle

如何使用JRuby和JDBC连接到Oracle
EN

Stack Overflow用户
提问于 2009-04-16 08:22:24
回答 2查看 12.3K关注 0票数 6

第一步:裸金属

代码语言:javascript
复制
require 'java'
require 'rubygems'
require "c:/ruby/jruby-1.2.0/lib/ojdbc14.jar"  # should be redundant, but tried it anyway
odriver = Java::JavaClass.for_name("oracle.jdbc.driver.OracleDriver")
puts odriver.java_class
url = "jdbc:oracle:thin:@myhost:1521:mydb"
puts "About to connect..."
con = java.sql.DriverManager.getConnection(url, "myuser", "mypassword");
if con
    puts " connection good"
else
    puts " connection failed"
end

上述结果如下:

代码语言:javascript
复制
sqltest.rb:4: cannot load Java class oracle.jdbc.driver.OracleDriver (NameError)

第二种方法:活动记录

代码语言:javascript
复制
require 'rubygems'
gem 'ActiveRecord-JDBC'
require 'jdbc_adapter'
require 'active_record'
require 'active_record/version'
require "c:/ruby/jruby-1.2.0/lib/ojdbc14.jar"  # should be redundant...

ActiveRecord::Base.establish_connection(
   :adapter => 'jdbc',
   :driver => 'oracle.jdbc.driver.OracleDriver',
   :url => 'jdbc:oracle:thin:@myhost:1521:mydb',
   :username=>'myuser',
   :password=>'mypassword'
 )
ActiveRecord::Base.connection.execute("SELECT * FROM mytable")

其结果是:

代码语言:javascript
复制
C:/ruby/jruby-1.2.0/lib/ruby/gems/1.8/gems/activerecord-jdbc-adapter-0.9.1/lib/active_recordconnection_adapters/jdbc_adapter.rb:330:in `initialize': 
The driver encountered an error: cannot load Java class oracle.jdbc.driver.OracleDriver (RuntimeError)

不管我怎么做,本质上都是同样的错误。

我使用的是JRuby 1.2.0,我的JRuby库目录中有ojdbc14.jar

宝石:

  • ActiveRecord-JDBC (0.5)
  • activerecord-jdbc-adapter (0.9.1)
  • activerecord (2.2.2)

我遗漏了什么?

谢谢,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-04-20 00:50:25

事实证明,我的ojdbc14.jar文件已损坏。

此外,jar文件必须位于jruby/lib目录中。简单地把它放在类路径上是行不通的。

票数 5
EN

Stack Overflow用户

发布于 2009-04-16 08:27:44

您安装了Oracle客户端吗?您可能至少需要客户端的jdbc驱动程序文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/755207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档