rails的链接oracle数据库的几个问题。

原创 2007年09月22日 22:58:00

最近学学rails,随便为我们的实时系统做一个测试用的模拟器。
以前没有接触过rails,在网上看了两天ruby的资料,买了一本《Agile Web Development with Rails》,翻了翻开始做 起来。

下载ruby,下载rails,一切顺利。
1.
配置数据库,我们以前的系统用的是oracle9,于是我在http://rubyforge.org/projects/ruby-oci8下载了一个驱动程序。
C:/>ruby ruby-oci8-0[1].1.13-mswin.rb

Copy OCI8.rb to c:/ruby/lib/ruby/site_ruby/1.8/DBD/OCI8
Copy oci8.rb to c:/ruby/lib/ruby/site_ruby/1.8
Copy oci8lib.so to c:/ruby/lib/ruby/site_ruby/1.8/i386-msvcrt
OK?
Enter Yes/No: Yes
Copying OCI8.rb to c:/ruby/lib/ruby/site_ruby/1.8/DBD/OCI8 ... done
Copying oci8.rb to c:/ruby/lib/ruby/site_ruby/1.8 ... done
Copying oci8lib.so to c:/ruby/lib/ruby/site_ruby/1.8/i386-msvcrt ... done
OK
成功。

由于我的Oracle在公司服务器上,所以我配置oralce9带的tnsnames.ora
ORA920 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ×.×.×.×)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = ora920)
    )
  )

2.用rails创建我的模拟器工程,
rails sim
好了,在./ora/config/database.yml
development:
  adapter: oci
  database: ora920
  username: test
  password: test
  host: ora920
  encoding: utf8
设置utf8是因为解决rails显示中文的问题。

3.接着,用rails脚手架,试着建立对某数据库表的访问。
./ruby script/generate scaffold svc_product

exists  app/controllers/
      exists  app/helpers/                               
      create  app/views/svc_products                                                                                      
      exists  app/views/layouts/              
      exists  test/functional/                  
  dependency  model                                                                                                       
      exists    app/models/                                                                                               
      exists    test/unit/
      exists    test/fixtures/
        skip    app/models/svc_product.rb
   identical    test/unit/svc_product_test.rb             
   identical    test/fixtures/svc_products.yml            
"DESC svc_products" failed; does it exist?  

失败了,是rails默认会寻找复数的表名,要去除这个约定,需要增加一个全局变量赋值(我在development.rb中加)
ActiveRecord::Base.pluralize_table_names = false

4.现在启动web server
ruby script/server

打开浏览器,试试访问svc_product
哦,中文显示有问题,是乱码。选择浏览器编码为GB2312,渲染网页,中文已经正常显示了。现在我们已经可以通过网页增删改表的数据了。不错,不错。

 

 

相关文章推荐

关于Oracle数据库中行迁移/行链接的问题

一、行迁移/行链接的介绍在实际的工作中我们经常会碰到一些Oracle数据库性能较低的问题,当然,引起Oracle数据库性能较低的原因是多方面的,我们能够通过一些正确的设计和诊断来尽量的避免一些Orac...

关于Oracle数据库中行迁移和行链接的问题

行迁移/行链接 Row Migration (行迁移) & Row Chaining (行链接)会影响Oracle数据库性能,通过合理的诊断行迁移/行链接,我们可以较大幅度上提高Oracle数据库的...

ADO.NET(二) oracle数据库链接、和Oracle.DataAccess.dll 有关异常的各种问题

今天本来看数据库链接,做个简单demo.可是最后遇到各种问题。搞了4个小时,终于勉强搞定。 一、Connection对象    创建Connection对象时需要提供链接字符串,链接字符串是用分号隔开...

R语言链接oracle数据库

  • 2016年06月30日 13:51
  • 1KB
  • 下载

VC++链接ORACLE数据库

  • 2014年07月10日 22:46
  • 241KB
  • 下载

Oracle数据库链接的建立

数据库链接(DATABASE LINK)是在分布式环境下,为了访问远程数据库而创建的数据通信链路。数据库链接隐藏了对远程数据库访问的复杂性。通常,我们把正在登录的数据库称为本地数据库,另外的一个数据库...

c++通过occi链接oracle数据库

  • 2013年07月01日 16:41
  • 13KB
  • 下载

java通过配置文件jdbc.properties链接Oracle数据库工具类

package resources;import java.io.IOException; import java.io.InputStream; import java.sql.Connection...

c++ 读取xml中的配置链接oracle数据库

  • 2016年11月03日 14:38
  • 37.46MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:rails的链接oracle数据库的几个问题。
举报原因:
原因补充:

(最多只允许输入30个字)