ADO Model Summary
微軟公司的ADO (ActiveX Data Objects) 是一個用於存取資料來源的COM組件。它提供了程式設計語言和統一資料訪問方式OLE DB的一個中介層。允許開發人員編寫訪問資料的代碼而不用關心資料庫是如何?的,而只用關心到資料庫的串連。訪問資料庫的時候,關於SQL的知識不是必要的,但是特定資料庫支援的SQL命令仍可以通過ADO中的命令對象來執行。
ADO包含一些頂層的對象:
Connection,代表到資料庫的串連
RecordSet,代表資料庫記錄的一個集合
Command,代表一個SQL命令
Record,代表資料的一個集合
Flow,代表資料的循序集合
Error,代表資料庫訪問中產生的意外
Field,代表一個資料庫欄位
Paramer,代表一個SQL參數
Porperties,儲存對象的資訊
一、Connection
//提供與資料庫的串連。其它兩個對象都是通過它來完成與資料庫的操作。
Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "Driver={ODBC驅動程式};DBQ=資料庫名"
Function & Properties
Open: 開啟一個Connection對象執行個體 // cn.Open ConnectionString
Execute: 產生一個RecordSet執行個體(可以不用單獨執行個體化RecordSet對象)
// cn.Execute CommandText
1. SQL語句,表示將執行一段SQL語句
2. 資料庫的一個表名,表示將對該表進行操作
* Tip : 通過情況都會執行個體化一個RecordSet對象更靈活
ex.
<%
set conn= server.CreateObejct("ADODB.Connection")
conn.Open "Drive={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("data/data.mdb")
set rs = Server.CreateObejct("ADODB.RecordSet")
rs=conn.Execute ("Select * from user")<-! 將查詢返回的資訊賦於rs對象 ->
<-! rs.Open "Select * from user",conn,1,1 與上一條命令相同功能->
%>
二、RecordSet
//表示來自基於表或命令執行結果的記錄全集
Set rs = Server.CreateObjecct("ADODB.RecordSet")
rs.Open table|SQL Command, Connection, Record Type,Locked Type
Record Type
1 遊標向下移動
2 遊標向上移動
Locked Type
1 資料唯讀
2 允許同步更新
3 記錄更新,表中不更新
Function & Properties
Open
Close : 關閉RecordSet對象的串連
MoveFirst: 將指標移動到表首
MoveLast: 將指標移動到表尾
MoveNext: 指標下移一行
MovePervious:指標上移一行
分頁:
AbsolutePage: 目前絕對資料頁位置<-! 取當前是記錄屬於第幾頁 ->
BOF: 資料集的開頭邊界(type=Boolean)<-!第一條記錄的上面->
EOF: 資料集體的結尾邊界(type=Boolean)<!最未條記錄的下面->
PageCount: 資料頁的總數
PageSize: 控制每一資料頁的記錄行數
RecordCount: 由伺服器取回的記錄總數