Cita:
Iniciado por gnzsoloyo
Código vb.net:
Ver original.Parameters.Add("?spusuario", Me.txtUsuario.Text).Direction = ParameterDirection.Input
.Parameters.Add("?spclave", Me.txtClave.Text).Direction = ParameterDirection.Input
1) Debe ir "?" o "@" como prefijo del nombre del parámetro. La diferencia será si es .Net 1.1 o 2.0.
2) Debes indicar la direccion del parámetro.
Gracias por tu respuesta!! Probe ese codigp pero me manda error!! Acontinuacion de pongo como puse ese codigo:
Código vb.net:
Ver originalDim csb As New MySqlConnectionStringBuilder
With csb
.Server = "localhost"
.Database = "inventario"
.UserID = "root"
.Password = "abc123A"
End With
Using con As New MySqlConnection(csb.ConnectionString)
con.Open()
Dim cmd2 As New MySqlCommand("call id_usuario", con)
With cmd2
.Parameters.Add("@spusuario", Me.txtUsuario.Text).Direction = ParameterDirection.Input
.Parameters.Add("@spclave", Me.txtClave.Text).Direction = ParameterDirection.Input
End With
Dim i As Integer
i = CInt(cmd2.ExecuteScalar())
If i > 0 Then
contador = 0
MsgBox("Bienvenido", MsgBoxStyle
.Information) Exit Sub
Else
contador = contador + 1
MsgBox("Verifique su usuario y contraseña", MsgBoxStyle
.Exclamation) End If
If contador = 3 Then
MsgBox("Ha intendado ingresar mas de tres veces", MsgBoxStyle
.Critical) con.Dispose()
Application.Exit()
End If
End Using
End Sub
Y los errores que me manda son advertencias:
Código Advertencias de VB:
Ver originalAdvertencia 1 'Public Function Add(parameterName As String, value As Object) As MySql.Data.MySqlClient.MySqlParameter' está obsoleto: 'Add(String parameterName, Object value) has been deprecated. Use AddWithValue(String parameterName, Object value)' D:\Erick\Proyectos Visual Studio\Inventario -mysql\Inventario\Inventario\Form1.vb 34 17 Inventario
Advertencia 2 'Public Function Add(parameterName As String, value As Object) As MySql.Data.MySqlClient.MySqlParameter' está obsoleto: 'Add(String parameterName, Object value) has been deprecated. Use AddWithValue(String parameterName, Object value)' D:\Erick\Proyectos Visual Studio\Inventario -mysql\Inventario\Inventario\Form1.vb 35 17 Inventario
Ocupe el Addwithvalue pero igual me manda error!! Acontinuacion de muestro el codigo con addwithvalue:
Código vb.net:
Ver original.Parameters.AddWithValue("@spusuario", Me.txtUsuario.Text).Direction = ParameterDirection.Input
.Parameters.AddWithValue("@spclave", Me.txtClave.Text).Direction = ParameterDirection.Input
y el error arrojado por visual studio (ME sombrea en amarillo la parte de este codigo: i = Cint(cmd.ExecuteScalar)
Código mensaje error:
Ver originalIncorrect number of arguments for PROCEDURE inventario.id_usuario; expected 2, got 0
De ante mano gracias por tu respuesta!!