Visual Basic.NET - Error en conexion a bd access

 
Vista:

Error en conexion a bd access

Publicado por julian (3 intervenciones) el 23/04/2018 03:46:20
Hola buenas tardes, es mi primera vez dentro de lo que es VB.NET y siguiendo unos tutoriales estoy aprendiendo a conectarme a una bd para trabajar con ella.
Resulta que luego de armar el código y probar al conexion, me tira que está correcta, pero a la hora de clickear "conectarme al usuario y clave" para ejecutar la funcion "registro" me tira el siguiente error en la linea "cmd.connection = conexion" :
Referencia a objeto no establecida como instancia de un objeto.
mi código del modulo es:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
Module funciones
    Public conexion As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=bd.accdb;Persist Security Info=False")
    Public cmd As OleDb.OleDbCommand
    Public dr As OleDb.OleDbDataReader
    Public Sub conectarse()
        Try
            conexion.Open()
            MsgBox("Conexion a la DB exitosa")
 
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
 
    End Sub
 
    Public Sub registro(ByVal user, ByVal pass)
 
        cmd.Connection = conexion
 
        cmd.CommandType = CommandType.Text
 
 
 
        If user <> "" And pass <> "" Then
            cmd.CommandText = "SELECT * FROM Tabla2 WHERE usuario =" + user + " and clave =" + pass
 
        End If
        Try
            dr = cmd.ExecuteReader()
            dr.Read()
            If dr.HasRows Then
                While dr.Read()
                    MsgBox("Tu nivel es " + dr(3).ToString)
 
                End While
            Else
                MsgBox("No hay registros xd")
 
            End If
 
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub
 
End Module
y mi codigo del form:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Public Class logueo
    Dim user As String
    Dim pass As String
 
    Private Sub ejecutarConexion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ejecutarConexion.Click
 
        user = usuario.Text
        pass = clave.Text
        registro(user, pass)
 
 
    End Sub
 
    Private Sub logueo_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        conectarse()
    End Sub
End Class



Espero que me puedan ayudar, muchas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kingk
Val: 173
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Error en conexion a bd access

Publicado por kingk (77 intervenciones) el 23/04/2018 19:19:18
Hola el problema es que no instanciaste el ola el problema es que no instanciaste el command, debes declararlo así:
Dim cmd As New OleDb.OleDbCommand

O antes de especificar la conexión;
cmd=New OleDb.OleDbCommandcommand, debes declararlo así:
Dim cmd As New OleDb.OleDbCommand

O antes de especificar la conexión;
cmd=New OleDb.OleDbCommand
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 18
Ha aumentado su posición en 7 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Error en conexion a bd access

Publicado por Daniel (12 intervenciones) el 02/05/2018 05:34:18
No esta creada la instancia de tu commando

deberia ser algo asi

cmd=New New OleDb.OleDbCommandcommand(Consulta,Conexion)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar