2013-07-04 77 views
0

我需要你的幫助,夥計們。我有一個錯誤。請參閱我的代碼如下:KEY不能爲空 - VB.net錯誤

 Imports MySql.Data.MySqlClient 
Public Class frmlogin 
Dim conn As MySqlConnection = New MySqlConnection 
Dim serverstring As String = "Server=localhost;User Id=root;Password=root;Database=dasystem" 
Dim login As Boolean 
Dim ds As DataSet 
Dim cusds As DataSet 
Dim da As MySqlDataAdapter 
Dim dt As DataTable 
Dim ctrshowlogin, ctrshowsearch As Integer 


Private Sub btnlogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnlogin.Click 
    Dim rowctr As Integer 
    Dim password As String 
    ctrshowlogin = 0 
    ds = New DataSet 
    da = New MySqlDataAdapter("select * from password", conn) 
    da.Fill(ds, "pword") 

    If cmbuser.SelectedItem = "Administrator" Then 
     For rowctr = 0 To ds.Tables(0).Rows.Count - 1 
      password = ds.Tables(0).Rows(rowctr).Item(0).ToString 
      If password = txtpass.Text Then 
       login = True 
      End If 
     Next (rowctr) 
     If login = True Then 
      MessageBox.Show("Login Successful!") 
      frmcomodities.Show() 
      Me.Hide() 
      cmbuser.Text = "" 
     ElseIf login = False Then 
      MessageBox.Show("Wrong Password, Please try again.") 
      txtpass.Focus() 
     End If 
    End If 
End Sub 

Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click 
    Close() 
End Sub 
End Class 

任何想法?我被這個問題困住了。如果你能幫忙,我很樂意欣賞它。謝謝。

+0

在什麼地方錯誤發生? –

+0

在這一行:da.Fill(ds,「pword」) –

+0

你真的有一個名爲'密碼'的表嗎?它的模式是什麼? – Steve

回答

0

您需要在da.Fill(ds, "pword")線要麼改變表的名稱相匹配的數據庫表名(密碼):

da.Fill(ds, "password") 

或只是刪除該參數完全

da.Fill(ds)