CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Saber Si Select Encuentra Lo Q Busca
Sete:
Ya definitivamente les hice casi y me meti con el ExcecuteScalar, la cosa es q me quedo de la siguiente forma:
--- Código: Text --- ' VariablesPrivate Conn As OleDbConnection Private scalarCMD As OleDbCommand Conn = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\pruebasdeVB.NET\-==Ultimo==-\Login.0.1.1\bin\Almagro.mdb") scalarCMD = New OleDbCommand("SELECT Login, Pass FROM Usuario where (Login=@Login and Pass=@Pass)", Conn) Dim respuesta As String Conn = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\pruebasdeVB.NET\-==Ultimo==-\Login.0.1.1\bin\Almagro.mdb") scalarCMD = New OleDbCommand("SELECT Login, Pass FROM Usuario where (Login=@Login and Pass=@Pass)", Conn) scalarCMD.Parameters.Add("@Login", OleDbType.VarChar, 15).Value = txtLogin.Text scalarCMD.Parameters.Add("@Pass", OleDbType.VarChar, 15).Value = txtPass.Text MessageBox.Show("Hasta los Parametros.....Todo OK") Conn.Open() respuesta = scalarCMD.ExecuteScalar() Conn.Close() MessageBox.Show(respuesta)
El problema es q al final solo me entrega el Login y no se como hacerlo para q me entregue la Pass y una vez echo esto q hacer para dejar Ingresar a la aplicacion ..Bueno eso seria.
Sete:
EUREKA!!
ya señores encontre como asignar los resultados a una variable...lo hice así:
--- Código: Text ---scalarCMD.Parameters.Add("@Login", OleDbType.VarChar, 15).Value = txtLogin.Text scalarCMD.Parameters.Add("@Pass", OleDbType.VarChar, 15).Value = txtPass.Text MessageBox.Show("Hasta los Parametros.....Todo OK") Conn.Open() scalarCMD.ExecuteScalar() respLogin = scalarCMD.Parameters("@Login").Value() respPass = scalarCMD.Parameters("@Pass").Value() Conn.Close() MessageBox.Show(respLogin) MessageBox.Show(respPass)
Ahora haria un if preguntando si las respLogin y respPass, son igua les txtLogin.text y txtPass.text, para abriri la aplicacion o cerrarla, pero sera la forma mas indicada?? o abra alguna mas eficiente??
Saludos señores y gracias por la ayuda.
=)
senzao18:
Yo lo que haria es regresar un valor true si la consulta encuentra registros con el procedimiento almacenado y tomar la variable.
--- Código: Text --- If (select count(*) from usuarios donde usuario y contraseña igual a algo)>0 set @bandera =Trueelse set @bandera =False select @bandera from tabla
O declarar un parametro de tipo output como tu le haces, pero que no sea el usuario y contrasña.
Navegación
[*] Página Anterior
Ir a la versión completa