問題二 再查詢與事務(wù)
1.再查詢數(shù)據(jù)
在多用戶應(yīng)用程序中,如果以可視的形式把數(shù)據(jù)顯示在窗口中,則需要用最新的數(shù)據(jù)來更新用戶的視圖。而要獲得由其他用戶修改了的最新視圖,應(yīng)用程序必須顯式地對數(shù)據(jù)執(zhí)行再查詢操作。為了獲得記錄集中數(shù)據(jù)的最新視圖,首先應(yīng)確定記錄集是否支持Requery方法。如果ReCordset對象的Restartable屬性值為Tme,則可以使用Requery方法來刷新Recordset對象的內(nèi)容。如果記錄集不支持Requery方法,則必須用OpenRecordset方法再次打開記錄集。一般說來,重新打開記錄集比使用Requery方法要慢一些。下面這個過程,用來測試一個記錄集是否可執(zhí)行再查詢。
過程如下:
Function RequeryRecordset(dbs As Database,rst As Recordset) As Integer
On Error Resume Next
注釋:能夠再查詢記錄集嗎?
If rst.Restartable=False Then
requeryRecordset=-1
EXit Function
End lf
rst.Requery 注釋:再查詢記錄集
Select Case Err 注釋:處理所有錯誤
Case 0
RequeryReCordset=0
EXit Function
Case Else
Err=0
注釋:重新打開記錄集
注釋:使用rstNane來獲取SQL
注釋:字符串、表或QueryDef的值
注釋:記錄集最初是基于它們的
Set rst=dbs.OpenRecordset(rst.Name, rst.Type)
Select Case Err
Case0
RequeryRecordset=0
EXit Function
Case Else
注釋:不返回錯誤給調(diào)用程序
1.再查詢數(shù)據(jù)
在多用戶應(yīng)用程序中,如果以可視的形式把數(shù)據(jù)顯示在窗口中,則需要用最新的數(shù)據(jù)來更新用戶的視圖。而要獲得由其他用戶修改了的最新視圖,應(yīng)用程序必須顯式地對數(shù)據(jù)執(zhí)行再查詢操作。為了獲得記錄集中數(shù)據(jù)的最新視圖,首先應(yīng)確定記錄集是否支持Requery方法。如果ReCordset對象的Restartable屬性值為Tme,則可以使用Requery方法來刷新Recordset對象的內(nèi)容。如果記錄集不支持Requery方法,則必須用OpenRecordset方法再次打開記錄集。一般說來,重新打開記錄集比使用Requery方法要慢一些。下面這個過程,用來測試一個記錄集是否可執(zhí)行再查詢。
過程如下:
Function RequeryRecordset(dbs As Database,rst As Recordset) As Integer
On Error Resume Next
注釋:能夠再查詢記錄集嗎?
If rst.Restartable=False Then
requeryRecordset=-1
EXit Function
End lf
rst.Requery 注釋:再查詢記錄集
Select Case Err 注釋:處理所有錯誤
Case 0
RequeryReCordset=0
EXit Function
Case Else
Err=0
注釋:重新打開記錄集
注釋:使用rstNane來獲取SQL
注釋:字符串、表或QueryDef的值
注釋:記錄集最初是基于它們的
Set rst=dbs.OpenRecordset(rst.Name, rst.Type)
Select Case Err
Case0
RequeryRecordset=0
EXit Function
Case Else
注釋:不返回錯誤給調(diào)用程序