我试图让用户使用mysql中应用程序数据库的用户表登录我在vb.net中创建的应用程序
我听说通常的做法是让一个名为“[my_app_name]”的MySQL用户拥有相关权限。然后我的应用程序使用它自己的用户表来控制对应用程序的访问,并使用一个MySQL用户来访问数据库。但我不知道怎么做,有人可以帮助我。我对这一切都不熟悉。
谢谢
答案 0 :(得分:1)
如果您正在制作一个登录表单,用于检查用户及其在MySQL数据库中的密码的验证,请按照我为自己的登录表单编写的代码。
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
Dim conn As MySqlConnection
'Connect to the database using these credentials
conn = New MySqlConnection
conn.ConnectionString = "your server goes here; user id=userid goes here; password=self explanatory; database=the database where the credential information is located"
'Try and connect (conn.open)
Try
conn.Open()
Catch myerror As MySqlException 'If it fails do this... (i.e. no internet connection, etc.)
MsgBox("Error connecting to database. Check your internet connection.", MsgBoxStyle.Critical)
End Try
'MySQL query (where to call for information)
Dim myAdapter As New MySqlDataAdapter
'Tell where to find the file with the emails/passes stored
Dim sqlquery = "SELECT * FROM your database with info WHERE Email = '" & txtEmail.Text & "' AND Password = '" & txtPassword.Text & "'"
Dim myCommand As New MySqlCommand
myCommand.Connection = conn
myCommand.CommandText = sqlquery
'Start query
myAdapter.SelectCommand = myCommand
Dim myData As MySqlDataReader
myData = myCommand.ExecuteReader
'See if the user exists
If myData.HasRows = 0 Then
MsgBox("Invalid email address or password.", MsgBoxStyle.Critical)
'Insert your settings change here. (i.e. My.Settings.LoggedIn = False)
Else
MsgBox("Logged in as " & txtEmail.Text & ".", MsgBoxStyle.Information)
'Another settings change: My.Settings.LoggedIn = True
Me.Close() 'close the login form
End If
务必更改控件名称并添加设置。
答案 1 :(得分:0)
打开MySQL Workbench并在第一个屏幕的右下角,在“服务器管理”列下,您将看到“管理安全性”。点击它。在左侧菜单中,您将看到“用户和权限”。点击它。您将看到一个显示“添加帐户”的按钮,单击该按钮将允许您创建新用户。在Schema Privileges选项卡中,您可以修改用户的权限。
您在此处创建的用户可以在您的连接字符串中使用。这是来自我的一个应用程序的示例MySQL连接字符串。下面连接字符串中的用户名修复,使用“登录名:”作为“修复”和“限制与主机匹配的连接:”为“%”。
“服务器= 10.0.0.113; UID =修复; PWD = '密码&安培; 92';数据库=修”
我希望这会有所帮助。祝你有美好的一天。