Я работаю над школьным проектом, используя визуальную базовую студию и базу данных mysql. В этом проекте есть разные типы пользователей (Менеджер, Сотрудник). что мне нужно, так это то, что когда пользователь входит в систему под своим именем пользователя и паролем, программа проверит из базы данных mysql столбец «Роль», чтобы определить, является ли эта роль пользователя (менеджер или сотрудник), если пользователь является менеджером он войдет в форму менеджера, иначе он перейдет в форму сотрудника
это часть моего кода:
Try
MySqlConn.Open()
Dim Query As String
Query = "Select * from etdsql.employeeinfo where Username ='" & UNameTextBox.Text & "' and password = '" & PswrdTextBox.Text & "' "
Command = New MySqlCommand(Query, MySqlConn)
Reader = Command.ExecuteReader
Dim count As Integer
count = 0
While Reader.Read
count = count + 1
End While
If count = 1 Then
MessageBox.Show("You are loged in successfuly")
ETDManager.Show()
Me.Hide()
Else
MessageBox.Show("Username and password are not correct")
End If
MySqlConn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
Finally
MySqlConn.Dispose()
End Try
извините за отсутствие информации :( я впервые с VB и не знал, что вам здесь предоставить, роль в той же таблице и попробую то, что вы предоставляете :) спасибо за вашу помощь, ценю это (^_ ^)
dim role as string
While Reader.Read
count = count + 1
role = Reader("Role") //This is the column's name in your db
End While
If count = 1 Then
MessageBox.Show("You are loged in successfuly")
if role = "Manager" Then
ETDManager.Show()
else
ETDEmployee.Show() //This is the name of your Employee form
end if
Me.Hide()
Else
MessageBox.Show("Username and password are not correct")
End If
```
it could be something like that, but you will have to change the names of the column in the database and the name of the form by the names you have in your project
Большое спасибо (^_^) все сработало отлично, ценю ваше время и работу
Если информация о роли находится в той же таблице, просто
Select UserRole from yourtable where username = @user and password = @hashedPassword
но мы не знаем вашу базу данных, и вы не предоставили нам ничего, чтобы дать более точный ответ. Также обратите внимание, что ваш оператор sql открыт для внедрения sql и должен быть заменен параметризованным оператором.