亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? crecord.cls

?? 數據庫連接封裝控件 可以連接Access
?? CLS
?? 第 1 頁 / 共 2 頁
字號:
        Resume ErrOut
    End If

ExitEntry:
    Move = True
    mstrErrDescription = ""
    mlngErrNo = 0
    Exit Function

ErrOut:
    Move = False
    mlngErrNo = -1
    mstrErrDescription = "目前記錄為空,無法移動!"
    Exit Function
OutSpace:
    Move = False
    mlngErrNo = -1
    mstrErrDescription = "移動越界。"
    Exit Function
E:
    Move = False
    mlngErrNo = Err.Number
    mstrErrDescription = Err.Description

End Function

'******************************************************************************
'目的:移動到最后一條記錄
'輸入:
'返回:成功/失敗
'******************************************************************************

Public Function MoveLast()
  On Error GoTo E
    If Not IsArray(mvarData) Then Resume ErrOut
    If UBound(mvarData) >= 0 Then
        mCurPosition = UBound(mvarData)
    Else
        Resume ErrOut
    End If
ExitEntry:
    MoveLast = True
    mstrErrDescription = ""
    mlngErrNo = 0
    Exit Function
ErrOut:
    mlngErrNo = -1
    mstrErrDescription = "目前記錄為空,無法移動!"
    Exit Function
E:
    MoveLast = False
    mlngErrNo = Err.Number
    mstrErrDescription = Err.Description
End Function

'******************************************************************************
'目的:根據FieldName找對應Item
'輸入:FeildName
'返回:Item
'******************************************************************************

Private Function Name2Item(ByVal sName As String) As Long
    On Error GoTo ErrH
    Dim i As Long
    
    Name2Item = -1
    If Not IsArray(mstrField) Then
        Exit Function
    Else
        For i = 0 To UBound(mstrField)
            If UCase(sName) = UCase(mstrField(i)) Then
                Name2Item = i
                Exit Function
            End If
        Next i
    End If
    
    Exit Function
ErrH:
    
End Function

'******************************************************************************
'目的:   根據Item找FieldName
'輸入:   Item
'返回:   FieldName
'******************************************************************************

Private Function Item2Name(ByVal Item As Long) As String
    On Error Resume Next
    
    Item2Name = ""
    If Not IsArray(mstrField) Then
        Exit Function
    ElseIf UBound(mstrField) <= Item Then
        Item2Name = mstrField(Item)
        Exit Function
    End If
End Function


'******************************************************************************
'目的:    檢查輸入的FieldName是否合法
'輸入:    FieldName
'返回:    True/False
'******************************************************************************

Private Function CheckField(ByVal sName As String) As Boolean
    On Error GoTo ErrH
    Dim i As Long
    
    CheckField = False
    If Not IsArray(mstrField) Then
        Exit Function
    End If
    
    For i = 0 To UBound(mstrField)
        If UCase(mstrField(i)) = UCase(sName) Then
            CheckField = True
            Exit Function
        End If
    Next i
    
    Exit Function
ErrH:
    
End Function

Public Property Let TableName(ByVal sTableName As String)
    mstrTableName = sTableName
End Property
Public Property Get TableName() As String
    TableName = mstrTableName
End Property

Public Function AddKeyField(ByVal Field As Variant) As Boolean
    On Error GoTo E
    Dim i As Integer, varTemp As Variant
    Dim sFieldName As String, lngItem As Long
    
    If Not IsArray(mstrField) Then
        mlngErrNo = -1
        mstrErrDescription = "請先使用AddField添加兩個或兩個以上字段。"
        Exit Function
    End If
    If Not IsNumeric(Field) Then
        If CheckField(Field) Then
            sFieldName = Field
        End If
    Else
        sFieldName = Item2Name(Val(Field))
    End If
    
    If sFieldName <> "" Then
        If IsArray(mstrKeyField) Then
            ReDim Preserve mstrKeyField(UBound(mstrKeyField) + 1) As Variant
            mstrKeyField(UBound(mstrKeyField)) = sFieldName
        Else
            ReDim mstrKeyField(0) As Variant
            mstrKeyField(0) = sFieldName
        End If
    Else
        Resume InvalidField
    End If
        
ExitEntry:
    AddKeyField = True
    mstrErrDescription = ""
    mlngErrNo = 0
    Exit Function
InvalidField:
    AddKeyField = False
    mstrErrDescription = "無效的字段。"
    mlngErrNo = -1
    Exit Function
E:
    AddKeyField = False
    mlngErrNo = Err.Number
    mstrErrDescription = Err.Description
End Function

Public Function Save() As Boolean
    On Error Resume Next
    Dim strSearch As String
    
    If Not IsArray(mstrField) Then Resume NoField
    If Not IsArray(mvarData) Then Resume NoData
    If UBound(mstrField) < 1 Then Resume NoField
    On Error GoTo E
    Dim i As Integer, strValue As String, strSql As String
    Dim adoRst As New ADODB.Recordset, j As Integer
    

    '先整理KEY
    If Not IsArray(mstrKeyField) Then
        ReDim mstrKeyField(0) As Variant
        mstrKeyField(0) = mstrField(0)
    End If
    
    For i = 0 To UBound(mstrField)
        strValue = strValue & "," & mstrField(i)
    Next i
    
    If Len(Trim(strValue)) > 1 Then
        strValue = Right(strValue, Len(strValue) - 1)
        strSql = "Select " & strValue & " From " & mstrTableName & " "
    '不可以沒有被選取的字段
    Else
        Exit Function
    End If
    adoRst.CursorLocation = adUseClient
    With adoRst
        '根據varData逐條記錄更新表
        For i = 0 To UBound(mvarData)
            Select Case mvarData(i)(mstrKeyField(0))
                '表示新增記錄
                Case 0
                    .Open strSql & " Where 1=0", mAdoConn, adOpenDynamic, adLockOptimistic
                    .AddNew
                    On Error Resume Next
                    For j = 0 To adoRst.Fields.Count - 1
                        .Fields(j).Value = mvarData(i)(mstrField(j))
                    Next j
                    On Error GoTo E
                    .Update
                    .Close
                '表示刪除記錄
                Case -1
                    strSearch = ""
                    For j = 0 To UBound(mstrKeyField)
                       If strSearch = "" Then
                           strSearch = mstrField(j) & "=" & mvarData(i)(mstrField(j))
                       Else
                          strSearch = strSearch & " And " & mstrField(j) & "=" & mvarData(i)(mstrField(j))
                       End If
                    Next j
                     
                    mAdoConn.Execute "Delete From " & mstrTableName & " Where " & strSearch
                '表示更新記錄
                Case Else
                    strSearch = ""
                    For j = 0 To UBound(mstrKeyField)
                       If strSearch = "" Then
                           strSearch = mstrField(j) & "=" & mvarData(i)(mstrField(j))
                       Else
                          strSearch = strSearch & " And " & mstrField(j) & "=" & mvarData(i)(mstrField(j))
                       End If
                    Next j
                    .Open strSql & " Where " & strSearch, mAdoConn, adOpenDynamic, adLockOptimistic
                    If Not .EOF Then
                        On Error Resume Next
                        For j = 0 To adoRst.Fields.Count - 1
                            .Fields(j).Value = mvarData(i)(mstrField(j))
                        Next j
                        On Error GoTo E
                        .Update
                    End If
                    .Close
            End Select
        Next i
    End With

    
ExitEntry:
    Save = True
    mlngErrNo = 0
    mstrErrDescription = ""
    Exit Function
NoField:
    Save = False
    mlngErrNo = -1
    mstrErrDescription = "字段集合未定義或數目不夠。"
    Exit Function
NoData:
    Save = False
    mlngErrNo = -1
    mstrErrDescription = "沒有數據,無需保存。"
    Exit Function
E:
    Save = False
    mlngErrNo = Err.Number
    mstrErrDescription = Err.Description
End Function

Public Sub Init()
    On Error Resume Next
    Dim var As Variant
    
    mstrField = var
    mbIsDataAdded = False
    mCurPosition = -1
    mvarData = var
    mstrTableName = ""
    mstrKeyField = var
    mlngErrNo = 0
    mstrErrDescription = ""
    If Not mAdoConn Is Nothing Then
        Set mAdoConn = Nothing
    End If
End Sub

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
性久久久久久久| 亚洲日本电影在线| 久久久久9999亚洲精品| 久久午夜色播影院免费高清| 97se亚洲国产综合在线| 菠萝蜜视频在线观看一区| 国产**成人网毛片九色| 国产一区二区三区香蕉| 国产美女在线观看一区| 国产在线视视频有精品| 国产成人在线视频网站| www.色精品| 欧美猛男男办公室激情| 日韩欧美视频一区| 国产日本欧洲亚洲| 香蕉影视欧美成人| 国产91露脸合集magnet| av不卡一区二区三区| 欧美视频三区在线播放| 欧美人妇做爰xxxⅹ性高电影| 欧美一级理论片| 欧美韩国日本不卡| 久久国产三级精品| 在线观看一区二区精品视频| 欧美一区二区三区思思人| 国产蜜臀av在线一区二区三区| 一区二区三区日韩精品视频| 国产精品白丝jk白祙喷水网站| 色悠悠亚洲一区二区| 精品成人一区二区三区四区| 国产精品女主播在线观看| 日本vs亚洲vs韩国一区三区二区 | 国产精品美日韩| 蜜桃视频在线观看一区| 色综合久久88色综合天天免费| 一区视频在线播放| 国产91精品在线观看| 日本一二三不卡| 国内精品免费在线观看| 日韩午夜精品电影| 日本少妇一区二区| 欧美丰满少妇xxxxx高潮对白| 亚洲欧美精品午睡沙发| 久久99精品久久久久婷婷| 91精品国产综合久久精品| 亚洲五月六月丁香激情| 在线中文字幕一区| 三级影片在线观看欧美日韩一区二区| 91免费看`日韩一区二区| 亚洲综合一区二区三区| wwwwxxxxx欧美| 成人午夜视频在线| 亚洲国产精品精华液ab| 欧美在线免费观看亚洲| 久久99精品国产| 欧美国产一区在线| 欧美日韩精品免费| 亚洲福利一区二区| 欧美成人综合网站| 国产 欧美在线| 天天操天天色综合| 久久久777精品电影网影网 | 91麻豆免费看片| 五月天久久比比资源色| 久久精品网站免费观看| 欧洲一区在线观看| 日韩av中文字幕一区二区| 国产精品伦理一区二区| 欧美三级一区二区| 成人性生交大片免费看中文| 视频一区在线视频| 亚洲国产精品一区二区www| 精品国一区二区三区| 欧美综合亚洲图片综合区| 成人性生交大片免费看视频在线| 玖玖九九国产精品| 亚洲一线二线三线久久久| 国产欧美日韩麻豆91| 日韩欧美区一区二| 这里只有精品99re| 欧美日韩国产美女| 欧美色综合网站| 一本大道av一区二区在线播放| 九九九久久久精品| 麻豆国产欧美一区二区三区| 一区二区三区四区激情| 一区二区免费看| 国产精品国产三级国产aⅴ无密码| 精品福利一区二区三区| 2020国产精品| 久久网这里都是精品| 日韩欧美国产一区在线观看| 久久久久久久久久美女| 国产亚洲欧美激情| 久久久亚洲高清| 国产精品九色蝌蚪自拍| 亚洲综合视频网| 亚洲国产中文字幕在线视频综合| 久久精品网站免费观看| 日韩写真欧美这视频| 日韩一二三四区| 欧美成人女星排行榜| 国产99久久久国产精品免费看| 蜜桃一区二区三区四区| 国产毛片精品国产一区二区三区| 午夜精品成人在线| 久久 天天综合| 国产伦理精品不卡| 91丝袜呻吟高潮美腿白嫩在线观看| 成人动漫一区二区在线| 日韩欧美国产三级| 精品国产91久久久久久久妲己| 国产日本欧美一区二区| 亚洲欧洲一区二区在线播放| 丝袜美腿亚洲一区| 欧美日韩美女一区二区| 成人一级视频在线观看| 国产精品亚洲第一| 成人午夜精品在线| 欧美三级在线播放| 亚洲最快最全在线视频| 国产一区二区调教| 91在线精品一区二区三区| 精品国产乱码久久久久久浪潮| 亚洲精品一区二区三区影院| 久久一留热品黄| 日韩国产精品久久久| 91成人看片片| 日韩成人免费看| 91高清在线观看| 亚洲欧洲成人自拍| 成人国产精品免费观看| 亚洲男女一区二区三区| 国产精品亚洲专一区二区三区| 欧美群妇大交群中文字幕| 亚洲日本一区二区| 色婷婷激情一区二区三区| 一个色妞综合视频在线观看| 首页综合国产亚洲丝袜| 欧美日韩国产成人在线91| ww亚洲ww在线观看国产| 成人不卡免费av| 国产欧美日韩一区二区三区在线观看 | 国产成人精品免费看| 日韩午夜在线观看| 久久不见久久见中文字幕免费| 久久久精品国产免费观看同学| 成人av网址在线| 中文字幕乱码久久午夜不卡 | 91在线丨porny丨国产| 一区二区在线电影| 欧美丰满嫩嫩电影| 成人免费福利片| 亚洲图片欧美一区| 欧美精品一区二区三区高清aⅴ| 国内精品嫩模私拍在线| 国产喷白浆一区二区三区| 91蜜桃网址入口| 国产91精品欧美| 国产精品美女久久久久久2018 | 久久9热精品视频| 亚洲免费在线视频| 91精品国产综合久久精品麻豆 | 床上的激情91.| 亚洲人成亚洲人成在线观看图片| 欧美日韩国产一级片| 成人性色生活片| 粉嫩av一区二区三区| 国产精品久久久久久福利一牛影视 | 国产日产亚洲精品系列| 亚洲一区二区三区四区在线免费观看 | 欧美精品一区二区三区四区| 视频在线在亚洲| 91精品欧美一区二区三区综合在| 亚洲青青青在线视频| 国产一区二区精品在线观看| 欧美一区二区三区四区五区 | 国产欧美日韩亚州综合 | 91蝌蚪porny| 久久亚洲影视婷婷| 国产精选一区二区三区| 日韩欧美一级片| 久久99精品国产.久久久久| 宅男噜噜噜66一区二区66| 三级不卡在线观看| 7777精品久久久大香线蕉| 偷拍亚洲欧洲综合| 91麻豆国产福利在线观看| 欧美精品一区二区在线观看| 亚洲一区成人在线| 欧美日韩在线播放三区四区| 亚洲综合色在线| 欧美日韩精品欧美日韩精品 | 日韩欧美专区在线| 国产一区999| 国产欧美日韩不卡免费| 99综合影院在线| 亚洲欧美激情小说另类| 欧美一二三四区在线| 麻豆国产欧美日韩综合精品二区|