新聞中心
連接Oracle數(shù)據(jù)庫的方法很多,下面為您介紹了一個通過OCI8接口連接Oracle數(shù)據(jù)庫的方法,希望對您學(xué)習(xí)連接Oracle數(shù)據(jù)庫方面能有所幫助。

目前成都創(chuàng)新互聯(lián)公司已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、成都網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計、新泰網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
如果你是是有那個PL/SQL程序的話,就可以順利的執(zhí)行以下的步驟了,因為oci8會使用tnsname中的配置 通過PL/SQL訪問數(shù)據(jù)庫
a 使用該命令直接安裝:gem install ruby-oci8
b 下載文件:http://rubyforge.org/projects/ruby-oci8/
B1.下載文件: ruby-oci8-1.0.6-mswin32.rb
下載到本地后通過命令 執(zhí)行rb文件:ruby ruby-oci8-1.0.6-mswin32.rb
B2. 下載文件:ruby-oci8-1.0.6-x86-mswin32-60.gem
............................... N多安裝方式
***文件如下:
ruby-oci8-1.0.6-mswin.rb 56 KB 1,989 i386 Other
ruby-oci8-1.0.6-x86-mswin32-60.gem 112 KB 780 i386 .gem (RubyGem)
ruby-oci8-1.0.6.gem 116 KB 798 Any .gem (RubyGem)
ruby-oci8-1.0.6.tar.gz
安裝成功后,驗證是否連接Oracle數(shù)據(jù)庫通過,方法如下:
#使用的時候一定要加載oci8
require 'oci8'
#創(chuàng)建連接
conn = OCI8.new("用戶名", "密碼","oracle服務(wù)器名稱")
a =[] puts r.join('') 主要是輸出樣式的問題 可以使用 puts r.to_s 函數(shù)用法如下: # sqlplus scott/tiger # sqlplus scott/tiger@orcl.world # sqlplus 'sys/change_on_install as sysdba' # sqlplus scott/tiger@//oracle_db.example.com/XE 2)exec exec(sql, *bindvars) 如果你沒有配置PL/SQL 沒有本地的tnsname 后者不想使用本地的TNSname 就可以直自己去定義個函數(shù): def open_connection 至于open_connection函數(shù)后面是否需要配置參數(shù),看項目需求了。如果你的項目數(shù)據(jù)庫基本就是那么一個的話 就可以直接在里面定義了 當(dāng)然也可以傳參數(shù) 數(shù)據(jù)庫訪問地址變化多的話 那就是要傳參數(shù)了。
#執(zhí)行查詢操作
cursor = conn.exec('select * from 表名') { |r| a<
1)OCI8.new
OCI8.new(userid, password, dbname = nil, privilege = nil)
connect to Oracle by userid and password. dbname is the connect string of Net8.
If you need DBA privilege, please set privilege as :SYSDBA or :SYSOPER.
If the Oracle client is 10g or later, you can use "http://hostname_or_ip:port_no/oracle_sid" as dbname.
conn = OCI8.new("scott", "tiger")
conn = OCI8.new("scott", "tiger", "orcl.world")
conn = OCI8.new("sys", "change_on_install", nil, :SYSDBA)
conn = OCI8.new("scott", "tiger", "http://oracle_db.example.com/XE")
tnsnames = '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = somehost.somedomain.com)(PORT = 1521)) (CONNECT_DATA = (SID = some_sid)))'
connection = OCI8.new('your_username', 'your_password', tnsnames)
end
名稱欄目:通過OCI8接口連接Oracle數(shù)據(jù)庫
網(wǎng)頁網(wǎng)址:http://www.dlmjj.cn/article/dhcgcie.html


咨詢
建站咨詢
