關於oracle的底層介面:OCI和OO4O的問題,歡迎指教! 樓主ivy_go(雲門舞集)2002-04-23 21:07:07 在 其他資料庫開發 / SQL Anywhere Studio 提問
我現在想用VC做資料庫訪問,以前用過ODBC,但是速度太慢,
搜了一下以前的文章,好像OCI比較快,還有人講過OO4O也很好用,
我快速地翻了翻ORCLE的聯機文檔,裡面有一些例子和協助,很高興,
但是希望大家能給我一些意見和建議,關於二者的使用,
謝謝! 問題點數:100、回複次數:17Top
1 樓flowerofwind(現實很殘酷)回複於 2002-04-23 21:56:57 得分
40
要快速靈活的與oracle互動,最好用oci介面,好多的資料庫中介軟體都用oci開發的,並且我也覺得很好用,當然需要你畫一些功夫在介面的設計 封裝上,甚至你可以設計和JDBC類是的介面,如果你用oracle9i,裡面有occi,使用c++封裝好的,可以直接使用
另外,請問OO4O是什麼啊?Top
2 樓yfr(阿毛)回複於 2002-04-23 22:00:54 得分
40
先說OCI,全稱:ORACLE CALL INTERFACE,是基於C語言的介面,效率高,功能強大,支援數組介面,但函數多,有些函數的參數比較多,且使用自訂的資料類型,比較複雜。
OO4O(Object Oriented for(four的諧音)Ole) 是以OCI作為底層與資料庫的介面,是通過COM封裝以後的形式,可以在VC,VB , ASP中使用。而且是以物件導向的方式(即是封裝好的一個一個的類)提供給你用的,比較容易上手,但因為使用了COM機制,其效能上有影響。這兩種介面都 是ORACLE的專用介面,如果你需要資料庫可移植,則不能使用這種專用介面。如果你能搞懂OCI,強烈建議使用OCI;如果在介面效能上要求不高,使用 OO4O就滿好的了!Top3 樓
jlandzpa(jlandzpa)回複於 2002-04-23 22:01:26 得分
20
Oracle Objects for OLE (OO4O) is an Oracle middleware that allows native access to Oracle from client applications using the Microsoft Object Linking and Embedding (OLE) standard. But performance-wise it is better than Open DataBase Connectivity (ODBC), a standard database access method developed by Microsoft Corporation, to access Oracle. OO4O is thread safe and provides full support for PL/SQL. Connection pooling is also available with later versions of OO4O.
Top
7 樓flowerofwind(現實很殘酷)回複於 2002-04-24 20:12:26 得分 0
是的occi是封裝好的c++類
8 樓flowerofwind(現實很殘酷)回複於 2002-04-24 20:17:26 得分 0
支援數組介面的意思就是說好比你需要將文字檔的資料大量匯入到資料庫,你可以一條一條的插入,但是很慢,oci提供的數組介面可以讓你批量插入,相當於bcpTop
12 樓chfhy(春風化雨)回複於 2002-04-27 08:59:13 得分 0
提點建議:因為OCI介面使標準的,你可以先在WINDOWS端用VC開發好訪問資料庫的連接埠Top
13 樓yfr(阿毛)回複於 2002-04-27 11:45:02 得分 0
所謂數組介面就是說可以使用一條語句操縱多條紀錄(主要對於INSERT,UPDATE和DELETE語句而言.例如:
insert into tab_name values(:col_a,:col_b,:col_c);
如果預留位置col_a,col_b,col_c中至少有一個幫定的是標量資料(非數組),則一次只能插入一條紀錄;如果這些預留位置綁定的是數組,則可以一次插入多條紀錄(如果各個數組中元素的個數不一致,則插入的條數等於所含元素個數最少的數組中的元素個數)Top