MySQL의 특정 열을 검사하고 이미 존재하는 경우 해당 값을 반환하는 데 도움이되는 코드를 찾고 있습니다. ForgotPassword 모듈에서 작업 중이므로 사용자가 "비밀번호 분실"을 클릭하면 사용자에게 사용자 이름을 입력하라는 양식이 표시됩니다. 일단 그/그녀가 끝나면 입력 된 사용자 이름이 존재하는지 확인하기 위해 시스템을 검사합니다. 여기 스택 오버플로에 대한 몇 가지 코드 발견 :MySQL에서 필드의 특정 값이 존재하는지 확인하는 방법
Private Sub btnCheckUser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCheckUser.Click
If IsUserExist(userName:=True) Then
MsgBox("user exists")
Else
MsgBox("user does not exists")
End If
End Sub
Private Function IsUserExist(ByVal userName As String) As Boolean
Dim query As String
Dim returnValue As Boolean = False
query = "SELECT username FROM dbase.tblusers WHERE username = @username "
Using conn As New MySqlConnection("server=localhost; userid=root; password=root; database=dbase")
Using cmd As New MySqlCommand()
With cmd
.Connection = conn
.CommandText = query
.CommandType = CommandType.Text
.Parameters.AddWithValue("@username", txtUsername.Text)
End With
Try
conn.Open()
If CInt(cmd.ExecuteScalar()) > 0 Then
returnValue = True
End If
Catch ex As MySqlException
MsgBox(ex.Message)
returnValue = False
Finally
conn.Close()
End Try
End Using
End Using
Return returnValue
End Function
을하지만이 코드는 If CInt(cmd.ExecuteScalar()) > 0 Then
에서 나에게 오류 Conversion from string "username" to type 'Integer' is not valid
을 제공합니다.
을 초기화하기 위해
IsUserExist
수신 사용해야합니다'만약 IsUserExist (아이디 : = 참)은 VB Then'인가 ??? 나는 결코 그런 건축을 만나지 않았다. 이 문자열에서'username' 변수를 사용해야합니다. IsUserExist (TextEdit1.Text)와 비슷하거나, –@ MarkZucchini와 비슷합니다. 오류는 없습니다. 그리고 전 dat 건설도 발생하지 않았습니다. 내가 어떻게 문제를 해결할 수 있는지 알고 있니? :) – Fvcundo
코드에서'.Parameters.AddWithValue ("@ username", txtUsername.Text) 문자열이 있습니다. 이것은 txtUsername 텍스트 상자에서 사용자 이름 값을 취하는 것으로 보이므로 매개 변수로 userName이 중요하지 않습니다. 이 줄을'.Parameters.AddWithValue ("@ username", userName)' –