Oracle Objects for OLE (OO4O) 是 Oracle 提供的中介軟體,支援 OLE 標準客戶端存取 Oracle,比 ODBC 更安全且完整支援 PL/SQL。核心物件:OraSession、OraDatabase、OraDynaset。
MYTABLE1:ID (NUMBER), UserName (VARCHAR2), Phone (VARCHAR2), Email (VARCHAR2)。<%
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.OpenDatabase("", "username/password", CInt(0))
%>
<%
Set OraDynaset = OraDatabase.DbCreateDynaset("SELECT * FROM mytable1", CInt(0))
%>
<%
Do While OraDynaset.EOF = FALSE
Response.Write OraDynaset.Fields("ID")
Response.Write OraDynaset.Fields("UserName")
' ... 其他欄位
OraDynaset.MoveNext
Loop
Set OraSession = Nothing
%>
<%
' 針對特定 ID
Set OraDynaset = OraDatabase.CreateDynaset("SELECT * FROM mytable1 WHERE ID = " & fID, CInt(0))
OraDynaset.Edit ' 或 AddNew 插入新行
OraDynaset.Fields("Phone").Value = fPhone
OraDynaset.Update
Set OraSession = Nothing
%>
<%
Set OraDynaset = OraDatabase.CreateDynaset("SELECT * FROM mytable1 WHERE ID = " & fID, CInt(0))
OraDynaset.Delete
Set OraSession = Nothing
%>
<%
Dim OraSession, OraDatabase, OraDynaset
' ... 取得表單參數 fID, fUserName ...
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.OpenDatabase("", "user/password", CInt(0))
Set OraDynaset = OraDatabase.CreateDynaset("SELECT * FROM mytable1 WHERE ID = " & fID, CInt(0))
' ... 編輯/更新邏輯 ...
%>
OO4O 提供物件導向介面操作 Oracle,適合 ASP/VB 開發者。後續將介紹預存程式整合以進一步提升架構品質。