Foros del Web » Programación para mayores de 30 ;) » .NET »

Access y VB.net, recuperar datos de la base de datos en un label

Estas en el tema de Access y VB.net, recuperar datos de la base de datos en un label en el foro de .NET en Foros del Web. hola miren tengo que recuperar un campo de mi base de datos de access en un label pero a la hora que corro me marca ...
  #1 (permalink)  
Antiguo 06/04/2011, 10:49
 
Fecha de Ingreso: abril-2011
Mensajes: 1
Antigüedad: 13 años
Puntos: 0
Exclamación Access y VB.net, recuperar datos de la base de datos en un label

hola miren tengo que recuperar un campo de mi base de datos de access en un label pero a la hora que corro me marca el siguiente error "referencia a objeto no establecida como la instancia de un objeto, miren si lleno mi datagrid si lo hace pero a la hora de tomar el campo de la base de datos me marca ese error a la hora de pinchar el boton aceptar se tienen q poner cada uno de los campos en los labels, miren aqui tengo mi codigo:

Public Class Examen
Dim miObjeto As New MisMetodos
Dim strConsulta As String
Dim dt As DataTable

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
strConsulta = "SELECT Pregunta FROM Preguntas"
miObjeto.Ejecuta_Consulta_Accion(strConsulta)
Label2.Text = dt.Rows(0).Item("pregunta").ToString()

End Sub
End Class

ahora esta es la clase donde conecto a la base de datos:

Imports System.Data
Imports System.Data.OleDb
Imports Microsoft.VisualBasic

Public Class MisMetodos
Dim MiConexion As OleDbConnection
Dim MiComando As OleDbCommand
Dim oConnect, oQuery As String

Public Sub Conecta_BD()

Dim strConexion As String
strConexion = My.Settings.cadena_conexion
MiConexion = New OleDbConnection(strConexion)
MiConexion.Open()
End Sub

Public Sub Ejecuta_Consulta_Accion(ByVal prmConsulta As String)
Try
Conecta_BD()
MiComando = New OleDbCommand(prmConsulta, MiConexion)
MiComando.ExecuteNonQuery()
Catch ex As Exception
MsgBox(ex.ToString())

End Try
End Sub


'EJECUTA CONSULTA A SQL SERVER Y DEVUELVE UN DataSet
Public Function EjecutaConsulta_SQL_Server_DS(ByVal prmConsulta As String) As DataSet

Dim resultado As New DataSet("xDataSet")
Dim adap As OleDbDataAdapter
Conecta_BD()
adap = New OleDbDataAdapter(prmConsulta, MiConexion)
adap.Fill(resultado, "xdataset")
Return resultado
End Function

Public Function EjecutaConsulta_SQL_Server_Escalar(ByVal prmConsulta As String) As String
Dim cd As OleDbCommand
cd = New OleDbCommand(prmConsulta, MiConexion)
Return cd.ExecuteScalar
End Function

Public Sub Cierra_BD()
MiConexion.Close()
End Sub

End Class

NECESITO HELP EL CAMPO SE LLAMA PREGUNTA Y LA TABLA PREGUNTAS
  #2 (permalink)  
Antiguo 07/04/2011, 02:45
 
Fecha de Ingreso: febrero-2011
Mensajes: 83
Antigüedad: 13 años, 2 meses
Puntos: 3
Respuesta: Access y VB.net, recuperar datos de la base de datos en un label

De un vistazo rápido diría que no estas almacenando nada en el datatable. Ese error te sale al intentar obtener algo del datarow, puede ser por varios motivos, por nombres de columna incorrectos, inexistentes, por no encontrar la fila ... personalmente, a mi siempre me ha salido por escribir mal el nombre de los campos de las columnas.

En tu caso estás llamando a "Ejecuta_Consulta_Accion(strConsulta)" que no te retorna ni dataSet ni dataTable e intentas acceder a un datatable vacio.

y como consejo general, aunque visual Basic sea no sea Case.Sensitive, procura escribir todo siempre igual, porque el contenido de un String SI es Case-Sensitive.

Espero que lo soluciones, no te falta mucho.
Suerte!

Etiquetas: access, label, recuperar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:36.