1.- La primera es que necesito que la consulta que hace a la base de datos sobre si el usuairo existe o no, como puedo hacer para determinar un valor logico de una consulta realizada??? osea, cuando se ejecuta el SELECT * FROM usuario WHERE nombre = ''''''''userid'''''''' and pass = ''''''''passid'''''''' ; como hago para saber si realmente lo encontro??? Yo tengo dos ideas , una, vaciar el contenido de la consulta a dos variables, o bien buscar como asignar un operador logico que me sirva como un flag, el asunto es que no he logrado realizar ninguno de los dos, ya que apenas estoy empezando en esto de las programacion en VB. Les dejo mi codigo para que vean como lo estoy usando, gracias por sus comentarios y sugerencias.
Código:
Option Explicit On
Option Strict On
Option Compare Text
Imports MySql
Imports MySql.Data.MySqlClient
Imports System
Public Class LoginForm1
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
Dim userid As String
Dim passid As String
userid = user_txt.Text
passid = passwd_txt.Text
Dim conector As String
conector = " database=rocar;data source=192.168.1.200;user id=rocar_taller;password =123456"
Dim conest As New MySqlConnection(conector)
Dim consulta As String = "SELECT * FROM usuario WHERE nombre=''''''''" & userid & "'''''''' and pass = ''''''''" & passid & "''''''''"
Dim query As New MySqlCommand(consulta)
query.Connection = conest
conest.Open()
Try
query.ExecuteNonQuery()
MsgBox("Consulta realizada con Exito")
Catch ex As MySqlException
MsgBox(ex.Message.ToString)
End Try
query.Connection.Close()
End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
Me.Close()
End Sub
End Class
Acabo de hacer unas modificaciones, porque leyendo la documentacion del conector viene algo sobre un datareader y pue sya lo hice y si jala bien y todo, me extrae info de la consulta pero!!! el valor que me devuelve en la variable que le asigno el datareader.getstring me manda solament el segundo registro del resultado de la consulta, osea, el password y no le usuario que es lo que yo quiero, alguna sugerencia???
aqui dejo el codigo:
Código:
Public Class LoginForm1
Dim usuario As String
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
Dim userid As String
Dim passid As String
userid = user_txt.Text
passid = passwd_txt.Text
Dim conector As String
conector = " database=rocar;data source=192.168.1.200;user id=rocar_taller;password =123456"
Dim conest As New MySqlConnection(conector)
Dim consulta As String = "SELECT * FROM usuario WHERE nombre=''''''''" & userid & "'''''''' AND pass = ''''''''" & passid & "''''''''"
Dim exec As New MySqlCommand(consulta, conest)
conest.Open()
Dim lector As MySqlDataReader
If user_txt.Text = "" And passwd_txt.Text = "" Then
MsgBox("Debes introducir tus datos")
Application.Restart()
Else
Try
lector = exec.ExecuteReader()
While lector.Read()
usuario = lector.GetString(1)
End While
MsgBox("bienvenido: " & usuario)
lector.Close()
Catch ex As MySqlException
MsgBox(ex.Message.ToString)
End Try
conest.Close()
End If
End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
Me.Close()
End Sub
End Class
Por cierto, igual ya intente modificando la consulta y seleccionando unicamente el campo nombre en lugar del * pero el VB me marca un error cuando hago eso -_-