vb是如何鏈接數據庫的

vb是如何鏈接數據庫的
          剛開始學習數據庫時 ,對數據庫很不瞭解,尤爲是模塊中的代碼。照着抄都有不少錯的,每一句究竟是什麼意思呢,根本不懂。因而我就花費了大量的時間去查每一句代碼的具體做用,直到我師傅說讓我帶着問題前進的時候。
         不過我仍是稍微有點成果的——我弄懂了模塊中的鏈接數據庫的代碼。先寫出來一些我本身的理解,若是錯了,請你們不惜賜教。
  
 Sub Main()                              '從sub main啓動工程
    Dim flogin As New frmlogin          '登錄窗體的模版 ,其中flogin 是一個窗體,不過爲何不直接登陸就不懂了。。。
    flogin.Show vbModal                 '把登錄窗體實例化
    If Not flogin.OK Then               'ok是加載在flogin窗體的一個開關,用來肯定是否登錄成功
        End
    End If
    Unload flogin
    
    Set fMainForm = New frmMain         '窗體實例化,相似flogin
    fMainForm.Show
End Sub

進入登錄界面
              
點擊肯定後的代碼運行方式
            
   Private Sub cmdok_Click()
    Dim txtSQL As String                      '定義一個字符串,存放sql的語句。
    Dim mrc As ADODB.Recordset               ’定義一個結果集(或者說是臨時的表格)存放從數據庫中調出的數據
    Dim MsgText As String                     ’定義一個字符串,存放鏈接數據庫的結果。通常再也不用戶界面體現

    If Trim(txtUserName.Text) = "" Then        '驗證用戶名欄是否爲空
  MsgBox "請輸入用戶名", vbOKOnly, "警告"      '若是是空的話,直接警告並退出
  exit sub
    Else
          txtSQL = "select * from user_info where user_ID='" & Trim(txtUserName.Text) & "'"              'sql語句,這句話的意思是從                                                                            'user_info 的表格中取出來全部user_id =用戶名中 字符的行。
          Set mrc = Executesql(txtSQL, MsgText)       '經過Executesql()這個函數將sql 語句送入,並將操做結束後獲得的結果集賦值給 mrc <span style="white-space:pre">					</span>' 括號中的txtsql存放的就是sql字符串,關於executesql()函數的運行方式,下面有詳細的描述。

        If mrc.EOF Then                ’.eof是mrc的一個屬性,若是從數據庫中進行了sql語句的操做,數據庫將從第一句開始查找符合條件的項<span style="white-space:pre">					</span>'進行操做,若是查到了最後一句,而且沒有發現任何符合條件的項,就會返回. eof= true  不然返回的<span style="white-space:pre">					</span>'則是 .eof=flase   若是他報錯的話,說明鏈接失敗  詳情參見:<a target=_blank href="http://blog.csdn.net/liyasong666888/article/details/37931469">mrcc.eof</a>
        MsgBox "沒有該用戶,請從新輸入!", vbOKOnly, "警告"
               txtUserName.SetFocus
        Else                                         '若是從數據庫中找到了所要找的項的話進行以下操做(此時數據存入mrc)
             If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then        '調出數據中的第一列,看其值是否等於用戶輸入的密碼。
                   OK = True
                   Me.Hide
                   UserName = txtUserName.Text
            Else
                MsgBox "密碼錯誤,請從新輸入密碼"
                txtPassword.Text = ""
                txtPassword.SetFocus
            End If

       End If

    End If

end sub
相關文章
相關標籤/搜索