`
j_butterfly
  • 浏览: 114084 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Rails 连接 Oracle 数据库

阅读更多

Rails 连接 Oracle 数据库
准备工作:
1)安装
ActiveRecord Oracle adapter
sudo gem install activerecord-oracle-adapter --source http://gems.rubyonrails.org

2) 安装 Oracle Client
http://www.oracle.com/technology/tech/oci/instantclient/index.html

在 安装过程可能会出错,一般都会有提示,可能会执行下面步骤
 2.1)sudo ln -s libclntsh.dylib.10.1 libclntsh.dylib
 2.2)设置环境变量,Mac下可 在.profile增加
export DYLD_LIBRARY_PATH="/usr/local/oracle/instantclient_10_2"


3) 安装ruby oracle驱动,要根据自己系统环境修改
sudo env DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH ARCHFLAGS="-arch x86_64" gem install ruby-oci8


安装参考下面文章:
http://blog.rayapps.com/2009/09/06/how-to-setup-ruby-and-oracle-instant-client-on-snow-leopard/

项 目需要Rails应用同时连接mysql与 Oracle DB,所以只要在config/database.yml文件中修改配置:
下面的配置 一般默认情况使用'development'的配置,及连接sqlite3数据库。

development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

iisp:
  adapter: oracle
  encoding: utf8
  database: 192.168.68.22/iisp.xjgz
  username: iisp916
  password: iisp916

其中iisp/database中,IP地址后面跟的是数据库的Sid,不是数据库名

model要连接 oracle时,在model中增加下面代码:

establish_connection 'iisp'
self.table_name = 't_capacity'
self.sequence_name = 's_capacity' # 主键生成

设置 Rails连接Oracle的编码:
config/environment.rb中增加下面代码
ENV['NLS_LANG'] = 'AMERICAN_AMERICA.UTF8'

参考:http://wiki.rubyonrails.org /database-support/oracle

2
0
分享到:
评论
1 楼 qichunren 2010-08-07  
我建议你安装oracle_enhanced adapter

相关推荐

    rails连接oracle需要的驱动

    rails连接oracle需要的驱动 执行命令:C:\> ruby 文件名.rb <br>

    巧用Ruby配备Oracle数据库

    首先,连接Oracle数据库需要Ruby的一个特定库——Ruby/Oracle 调用接口 (OCI8),它是基于Ruby/DBI模块的数据库驱动程序。RubyDBI提供了一个抽象层,使得开发者能够使用统一的API与不同的数据库系统(如JDBC或ODBC)...

    在RHEL上安裝設置ROR(nginx+passenger+ruby+rails+oracle+netzke)

    6. **Oracle数据库**: 配置RoR应用连接Oracle数据库需要安装`ruby-oci8` gem,它提供了Ruby与Oracle数据库的接口。由于Oracle驱动可能不包含在默认的`gem`源中,可能需要添加Oracle的gem源或者手动编译安装。 7. **...

    rails2.1與Oracle 連結所需gem

    标题“rails2.1与Oracle连接所需gem”指的是在Rails 2.1版本的应用程序中,如何配置和使用Oracle数据库的宝石(gem)扩展。Rails是Ruby on Rails框架的简称,是一个流行的开源Web应用程序框架,而Oracle则是一种企业...

    ruby连接oracle驱动

    ruby连接oracle驱动包,支持32位与64位操作系统 Developing applications with Oracle Database Build Ruby and Ruby on Rails applications using the ruby-oci8 driver or JRuby with the Oracle Enhanced ...

    巧用ruby配备oracle数据库.pdf

    在Rails框架中,连接到Oracle数据库所需的参数存储在`config/database.yml`文件中。例如: ```yaml development: adapter: oci host: xe username: development password: password test: adapter: oci host...

    巧用Ruby配备Oracle数据库.doc

    在Rails中,通过修改`config/database.yml`文件,可以轻松地配置Oracle数据库连接,使得Ruby on Rails应用能够与Oracle数据库进行数据交互。同时,注意保持数据库客户端库和Ruby/OCI8驱动的兼容性,以确保稳定的数据...

    使用ROR编写ORACLE WEB应用

    在描述中提到的博文链接可能详细介绍了如何配置Rails项目以连接Oracle数据库,包括以下步骤: 1. 安装Oracle客户端和必要的库,如Instant Client,以便在本地环境运行Oracle相关的程序。 2. 设置环境变量,确保Rails...

    ruby-oracle相关的数据库操作的gems包

    标题提到的"ruby-oracle相关的数据库操作的gems包"是指一组用于连接和交互Oracle数据库的Ruby库。描述中指出,这些包主要基于oci8技术,oci8是Oracle公司提供的一个C接口,允许其他编程语言,如Ruby,与Oracle数据库...

    结合使用 Oracle 和 Ruby on Rails 教程

    要将Oracle与Rails结合,我们需要一个适配器,如`activerecord-oracle_enhanced-adapter`,这是一个官方维护的Oracle数据库适配器,可以实现Rails和Oracle之间的通信。 安装`activerecord-oracle_enhanced-adapter`...

    连接MYSQL数据库归纳.pdf

    MySQL是一款流行的开源关系型数据库管理系统(RDBMS),由Oracle公司维护和开发。它使用结构化查询语言(SQL)进行数据库管理,是互联网上使用最广泛的数据库之一。MySQL以其高性能、可靠性、易用性和灵活性而闻名,...

    11种连接数据库的方法

    .NET Framework中的ADO.NET提供了连接、命令、数据适配器和数据集等组件,用于与SQL Server、Oracle等数据库通信。使用`SqlConnection`类创建连接,`SqlCommand`执行SQL,`SqlDataAdapter`填充DataSet。 3. **...

    jruby_on_rails

    4. **数据库配置**:JRuby on Rails 支持所有 JDBC 兼容的数据库,包括 MySQL、PostgreSQL 和 Oracle,通过配置 `config/database.yml` 文件来指定数据库连接。 5. **测试**:Rails 提供了丰富的测试框架,如 RSpec...

    ruby-plsql-master

    - 通过示例代码学习如何连接Oracle数据库,执行PL/SQL代码,并处理返回的结果。 6. **优化和性能**: - 使用这样的库可能会增加系统复杂性,因此在设计时需要权衡易用性、性能和维护性。 - 优化PL/SQL代码以减少...

    oracle-js-project:JS前端和Ruby on Rails后端

    - `config`: 存放应用配置文件,如数据库连接、路由等。 - `db`: 数据库相关的文件,如迁移(migrations)。 - `public`: 静态资源如HTML、CSS、图片等存放的地方。 - `spec`: 测试代码,Rails项目通常使用RSpec进行...

    web服务常用技术方式一览.docx

    总结起来,Web服务常用技术涉及动态脚本语言(如CGI、FastCGI、PHP、ASP、JSP等)、网站框架(如CGI、Rails等)、数据库系统(如SQL Server、Oracle、MySQL等)以及数据库管理和PHP的部署。了解和掌握这些技术对于...

Global site tag (gtag.js) - Google Analytics