首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

使用 Oracle Objects for OLE (OO4O) 在 ASP 中高效存取 Oracle

     編輯:Oracle 資料庫基礎

背景

ADO 經 ODBC 存取 Oracle 8 存在數字欄位無法讀取、速度極慢等問題。OO4O (Oracle Object for OLE) 為 Oracle 官方提供的 OLE Server,直接支援所有 OLE 相容應用 (含 ASP) 高效存取 Oracle。

必要軟體

  • Network Protocol Adapter
  • Oracle Objects for OLE 2.x
  • SQL*Net Client 2.x 或 Oracle Net8 Client 8.x
  • SQL*Plus、Oracle 8 ODBC Driver

需先用 SQL*Net/Net8 設定 Database Alias 並測試連線。

核心物件

OraClient, OraSession, OraConnection, OraDatabase, OraDynaset, OraSQLStmt, OraField, OraParameter, OraParameterArray。

ASP 分頁查詢範例 (query.asp / query1.asp)

<%
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.DbOpenDatabase("orant", "scotter/tiger", 0)
SQL = "SELECT * FROM cq_hjwj"
Set OraDynaset = OraDatabase.DbCreateDynaset(SQL, 0)

PageSize = 15
If OraDynaset.RecordCount = 0 Then
  Response.Write "無符合條件的資料"
Else
  Pages = Int(OraDynaset.RecordCount / PageSize)
  If Pages * PageSize = OraDynaset.RecordCount Then Pages = Pages Else Pages = Pages + 1
  Page = IIf(Request("page")="", 1, CStr(Request("page")))
  StartRow = (Page-1)*PageSize + 1
  EndRow = Page*PageSize
  OraDynaset.MoveTo StartRow
  ' 輸出表頭與資料迴圈
  For J = StartRow To EndRow
    ' ...
    OraDynaset.DbMoveNext
    If OraDynaset.EOF Then Exit For
  Next
  ' 輸出分頁連結
End If
Set OraSession = Nothing
%>

經 Windows NT 4.0 + IIS 4.0 測試通過,顯著提升 Web 端存取 Oracle 效率。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved