脫離Rails使用Activerecord

2021-09-08 06:45:09 字數 3427 閱讀 7447

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**

require 'rubygems'

require 'active_record'

activerecord::base.establish_connection(     

:adapter  => 'oracle_enhanced',      

:database => 'test',   #oracle service name

:username => 'system',      

:password => 'system')    

require 'rubygems'

require 'active_record'

activerecord::base.establish_connection(

:adapter => 'oracle_enhanced',

:database => 'test', #oracle service name

:username => 'system',

:password => 'system')

你還可以把資料庫的配置資訊單獨放在乙個檔案中,建立乙個檔案database.yml,內容如下

ruby**

adapter:  oracle_enhanced   

database: test   

username: system   

password: system  

adapter:  oracle_enhanced

database: test

username: system

password: system

更改rb檔案為

ruby**

require 'rubygems'

require 'active_record'

require 'yaml'

dbconfig = yaml::load(file.open('database.yml'))     

activerecord::base.establish_connection(dbconfig)    

require 'rubygems'

require 'active_record'

require 'yaml'

dbconfig = yaml::load(file.open('database.yml'))

activerecord::base.establish_connection(dbconfig)

試一試效果

ruby**

require 'rubygems'

require 'active_record'

require 'yaml'

dbconfig = yaml::load(file.open('database.yml'))     

activerecord::base.establish_connection(dbconfig)     

class user 

set_table_name "my_user"

endputs user.count    

require 'rubygems'

require 'active_record'

require 'yaml'

dbconfig = yaml::load(file.open('database.yml'))

activerecord::base.establish_connection(dbconfig)

class user < activerecord::base

set_table_name "my_user"

endputs user.count

如果你想給activerecord加上日誌,可以這麼做

ruby**

require 'rubygems'

require 'active_record'

require 'yaml'

require 'logger'

dbconfig = yaml::load(file.open('database.yml'))     

activerecord::base.establish_connection(dbconfig)     

activerecord::base.logger = logger.new(file.open('database.log', 'a'))     

class user 

set_table_name "my_user"

endputs user.count    

require 'rubygems'

require 'active_record'

require 'yaml'

require 'logger'

dbconfig = yaml::load(file.open('database.yml'))

activerecord::base.establish_connection(dbconfig)

activerecord::base.logger = logger.new(file.open('database.log', 'a'))

class user < activerecord::base

set_table_name "my_user"

endputs user.count

這樣就產生了乙個database.log檔案

ok,今天就到這裡吧

使用Active屬性判斷可否使用遠端資料庫

procedure tform1.formshow sender tobject begin query1.active false 改變資料庫之前,必須將資料集關閉 try query1.databasename oracle 首先將查詢元件的資料庫名設定成遠端資料庫,即oracle,然後開啟查詢...

Rails中使用flash總結

九 30th,2011 trackback 這個flash與adobe macromedia flash沒有任何關係。用於在兩個actions間傳遞臨時資料,flash中存放的所有資料會在緊接著的下乙個action呼叫後清除。一般用於傳遞提示和錯誤訊息。使用示例 controller class p...

Rails中使用flash總結

九 30th,2011 trackback 這個flash與adobe macromedia flash沒有任何關係。用於在兩個actions間傳遞臨時資料,flash中存放的所有資料會在緊接著的下乙個action呼叫後清除。一般用於傳遞提示和錯誤訊息。使用示例 controller class p...