[英]User is denied access when running a query
我的 vb.net 代码应该连接到我的数据库。 它成功地做到了这一点,直到我添加了一个查询来检查用户名和密码是否存在。 添加后,用户被拒绝访问,同时仍然使用相同的密码。 这可能是什么原因? 代码:
MysqlConn = New MySqlConnection()
MysqlConn.ConnectionString = "server=;" _
& "user id=;" _
& "password=;" _
& "database="
Try
MysqlConn.Open()
Using cmd As New MySqlCommand
cmd.CommandText = "SELECT COUNT(*) From tableUser WHERE Username=" & TextBox1.Text & " AND Password=" & TextBox2.Text
cmd.CommandType = CommandType.Text
cmd.Connection = MysqlConn
result = cmd.ExecuteScalar
End Using
MysqlConn.Close()
If (result < 1) Then
MessageBox.Show("Please make sure you have typed valid credentials!")
ElseIf result = 1 Then
Dim form As New Form2
form.Show()
Me.Close()
End If
Catch myerror As MySqlException
MessageBox.Show("Connection to the database has been lost. Please try again later.")
Finally
MysqlConn.Dispose()
End Try
这是一些代码,我刚刚写了它,希望它有所帮助,只需根据您的需要进行更改。
Private Sub login()
conn = New MySqlConnection
con.ConnectionString =
"server=localhost;userid=root;password=1234;database=batabase;port=3307"
Dim READER As MySqlDataReader
If TextBox1.Text = "" Then
MessageBox.Show("Please enter usename ! ", "Enter username")
Exit Sub
End If
If TextBox2.Text = "" Then
MessageBox.Show("Please enter password", "Enter password")
Exit Sub
End If
Try
conn.Open()
Dim Query As String
Query = "select * from db.users where user='" & TextBox1.Text & "' and password='" & TextBox2.Text & "' "
COMMAND = New MySqlCommand(Query, conn)
READER = COMMAND.ExecuteReader
Dim count As Integer
count = 0
While READER.Read
count = count + 1
End While
If count = 1 Then
Form.Show()
Me.Hide()
ElseIf count > 1 Then
MessageBox.Show("The username is already in use!")
Else
MsgBox("Error , please try again ", MsgBoxStyle.Critical)
End If
conn.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conn.Dispose()
End Try
End Sub
将数据库名称用户名更改为您的需要,它将起作用!
只需在表单上的登录按钮中添加 login() 即可!!! 或在没有 Private Sub login() 的情况下在您的按钮上输入此代码
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.