zoukankan      html  css  js  c++  java
  • 脱离Rails使用Activerecord

    ActiveRecord 是迄今为止我所见到的最好的ORM  library ,除了DB2,支持所有的主流数据库。如果你想知道如何单独使用Activerecord,please follow me。

    介绍一下我的系统环境:

    OS:windows2003

    DataBase: Oracle10g

    Ruby: 1.8.7 (2008-05-31 patchlevel 0) [i386-mswin32]

    activerecord: 2.2.2

    activerecord-oracle_enhanced-adapter: 1.1.8

    ruby-oci8:1.0.3

    准备工作:

    1.安装ruby,不用说了吧

    2.安装activerecord, gem install activerecord

    3.安装adapter, gem install activerecord-oracle_enhanced-adapter

    4.创建一个试验目录 mkdir dbtest

    ok,that's all

    创建一个rb文件,内容如下

    Ruby代码 复制代码
    1. require 'rubygems'     
    2. require 'active_record'     
    3.      
    4. ActiveRecord::Base.establish_connection(     
    5.   :adapter  => 'oracle_enhanced',      
    6.   :database => 'test',   #oracle service name   
    7.   :username => 'system',      
    8.   :password => 'system')    

    你还可以把数据库的配置信息单独放在一个文件中,创建一个文件database.yml,内容如下

    Ruby代码 复制代码
    1. adapter:  oracle_enhanced   
    2. database: test   
    3. username: system   
    4. password: system  

     更改rb文件为

    Ruby代码 复制代码
    1. require 'rubygems'     
    2. require 'active_record'     
    3. require 'yaml'     
    4.      
    5. dbconfig = YAML::load(File.open('database.yml'))     
    6. ActiveRecord::Base.establish_connection(dbconfig)    

     试一试效果

    Ruby代码 复制代码
    1. require 'rubygems'     
    2. require 'active_record'     
    3. require 'yaml'       
    4.      
    5. dbconfig = YAML::load(File.open('database.yml'))     
    6. ActiveRecord::Base.establish_connection(dbconfig)     
    7.   
    8. class User < ActiveRecord::Base    
    9.   set_table_name "my_user"  
    10. end     
    11.      
    12. puts User.count    

     如果你想给activerecord加上日志,可以这么做

    Ruby代码 复制代码
    1. require 'rubygems'     
    2. require 'active_record'     
    3. require 'yaml'     
    4. require 'logger'     
    5.      
    6. dbconfig = YAML::load(File.open('database.yml'))     
    7. ActiveRecord::Base.establish_connection(dbconfig)     
    8. ActiveRecord::Base.logger = Logger.new(File.open('database.log''a'))     
    9.      
    10. class User < ActiveRecord::Base   
    11.    set_table_name "my_user"  
    12. end     
    13.      
    14. puts User.count    

    这样就产生了一个database.log文件

    OK,今天就到这里吧

  • 相关阅读:
    第15.26节 PyQt(Python+Qt)入门学习:Model/View架构中的便利类QListWidget详解
    第二十一章、 Model/View便利类列表部件QListWidget详解
    PyQt(Python+Qt)学习随笔:QListWidget的信号简介
    iis日志存放位置 及 查看方法
    如何查看和分析IIS日志
    IIS网站设置禁止IP访问设置方法
    修改php默认的FastCGI模式为ISAPI模式的方法
    VPS/云主机CPU占用100%故障排查
    APACHE服务器httpd.exe进程占用cpu100%的解决方法
    httpd.exe占用100%CPU
  • 原文地址:https://www.cnblogs.com/hannover/p/1423528.html
Copyright © 2011-2022 走看看