直播中
2001 年 4 月
適用于:
Microsoft® Access 2002
摘要:本文說明如何將數(shù)據(jù)訪問頁(yè)綁定到斷開連接的 ADO 記錄集。
目錄
簡(jiǎn)介
創(chuàng)建使用斷開連接的記錄集的數(shù)據(jù)訪問頁(yè)
簡(jiǎn)介
斷開連接的記錄集是客戶端高速緩存中的對(duì)象,該對(duì)象沒有同服務(wù)器實(shí)時(shí)連接。使用斷開連接的記錄集,ActiveX® 數(shù)據(jù)對(duì)象 (ADO) 允許您創(chuàng)建記錄集,斷開與數(shù)據(jù)源的連接,使用戶可以脫機(jī)查看和編輯記錄集。
例如,“類別”數(shù)據(jù)訪問頁(yè)會(huì)詢問是否該頁(yè)應(yīng)使用斷開連接的數(shù)據(jù)。如果用戶單擊“是”,該頁(yè)將提示用戶輸入斷開連接的記錄集的路徑。如果用戶單擊“否”,該頁(yè)將使用實(shí)時(shí)數(shù)據(jù)。
創(chuàng)建使用斷開連接的記錄集的數(shù)據(jù)訪問頁(yè)
在“設(shè)計(jì)”視圖中創(chuàng)建數(shù)據(jù)訪問頁(yè)。
添加所需的控件和分組級(jí)別。例如,創(chuàng)建“類別”頁(yè),該頁(yè)組合有不同類別下的產(chǎn)品記錄。
將代碼添加到 BeforeInitialBind 事件,以便連接到斷開連接的記錄集,或者連接到實(shí)時(shí)數(shù)據(jù)。
以下是 BeforeInitialBind 事件過程示例。
<SCRIPT language=vbscript event=BeforeInitialBind(info) for=MSODSC>
<!--
Dim rs
Dim strShapeText
Dim strConnectionString
Dim strDataSource
adOpenKeyset=1
adLockOptimistic=3
If vbyes=msgbox("使用斷開連接的記錄集嗎?",vbyesno) Then
On Error Resume Next
strDataSource = InputBox ("請(qǐng)輸入要使用的_
斷開連接的記錄集的路徑。", "Enter Path", _
"C:\Program Files\Microsoft Office\Office10\Samples\ _
Northwind.mdb")
strShapeText = MSODSC.RootRecordsetDefs(0).ShapeText
strConnectionString = "Provider=MSDataShape.1; _
Persist Security Info=False;Data Source=" & strDataSource _
& ";User ID=Admin;Data Provider=Microsoft.Jet.OLEDB.4.0"
Set rs = CreateObject("ADODB.Recordset")
rs.Open strShapeText, strConnectionString, adOpenKeyset, _
adLockOptimistic
If err.Number <> 0 Then
MsgBox "錯(cuò)誤:" & err.description & "Error " & err.number
End If
MSODSC.SetRootRecordset "Categories", rs
End If
-->
</SCRIPT>
注意:
不能從 Microsoft Access 內(nèi)部正常使用綁定到斷開連接的記錄集的數(shù)據(jù)訪問頁(yè)。 應(yīng)在 Microsoft Internet Explorer 中打開該頁(yè),才能正常查看。
在創(chuàng)建 Microsoft® Office 數(shù)據(jù)源控件 (MSODSC) 事件的 Visual Basic® Scripting Edition (VBScript) 塊時(shí),必須將參數(shù)添加到事件名稱中,如下所示:
<SCRIPT LANGUAGE=vbscript FOR=MSODSC EVENT=Current(oventInfo)>
oEventInfo 參數(shù)用于向腳本返回有關(guān)該事件的具體信息。無論是否使用此參數(shù),都必須添加此參數(shù),否則腳本將無法運(yùn)行。