none
No coinciden los tipos de datos en la expresión de criterios. me podrían ayudar en esto porfavor

    Pregunta

  • Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
            'Formbuscar.Show()
            Dim adaptado As New OleDbDataAdapter
            Dim consulta As String
            Dim lista As Byte
            If TXTCEDULA.Text <> "" Then
                consulta = "SELECT * FROM DATOS WHERE CEDULA = '" & TXTCEDULA.Text & "'"
                adaptado = New OleDbDataAdapter(consulta, conexion)
                Registro = New DataSet
                adaptado.Fill(Registro, "DATOS")
                lista = Registro.Tables("DATOS").Rows.Count
                If lista <> 0 Then
                    DgvGridRegistro.DataSource = Registro
                    DgvGridRegistro.DataMember = "DATOS"
                    TXTCEDULA.Text = Registro.Tables("DATOS").Rows(0).Item("CEDULA")
                    TXTNOMBRE.Text = Registro.Tables("DATOS").Rows(0).Item("NOMBRE")
                    TXTAPELLIDOS.Text = Registro.Tables("DATOS").Rows(0).Item("APELLIDO")
                    TXTCURSO.Text = Registro.Tables("DATOS").Rows(0).Item("CURSO")
                    TXTPADRE.Text = Registro.Tables("DATOS").Rows(0).Item("ID_PADRE")
                    TXTMADRE.Text = Registro.Tables("DATOS").Rows(0).Item("ID_MADRE")
                    TXTCURSO.Text = Registro.Tables("DATOS").Rows(0).Item("CURSO")
                    TXTDIRECCION.Text = Registro.Tables("DATOS").Rows(0).Item("DIRECCION")
                    TXTTELEFNO.Text = Registro.Tables("DATOS").Rows(0).Item("TELEFONO")
                Else
                    MsgBox("NO EXISTE DATO", vbCritical, "¡ATENCION!")
                    LIMPIAR()
                End If
    
            End If
        End Sub

    miércoles, 7 de diciembre de 2016 15:59

Respuestas

  • ¿Cuál es el tipo de dato de la columna 'CEDULA' en la tabla? ¿int?. 

    Te recomiendo cambiar tu código al siguiente:

    'Formbuscar.Show()
    If Not String.IsNullOrEmpty(TXTCEDULA.Text) Then
    	Try
    		Using cn As New OleDbConnection("Cadena de conexión")
    
    			Dim Consulta As String = "SELECT * FROM DATOS WHERE CEDULA = ?"
    
    			Dim da As New OleDbDataAdapter(Consulta, cn)
    
    			da.SelectCommand.Parameters.AddWithValue("@param1",
    				Convert.ToInt32(TXTCEDULA.Text))
    
    			Dim dt As New DataTable
    
    			da.Fill(dt)
    
    			If dt.Rows.Count > 0 Then
    				DgvGridRegistro.DataSource = dt
    
    				TXTCEDULA.Text = dt.Rows(0).Item("CEDULA")
    				txtNombre.Text = dt.Rows(0).Item("NOMBRE")
    				TXTAPELLIDOS.Text = dt.Rows(0).Item("APELLIDO")
    				TXTCURSO.Text = dt.Rows(0).Item("CURSO")
    				TXTPADRE.Text = dt.Rows(0).Item("ID_PADRE")
    				TXTMADRE.Text = dt.Rows(0).Item("ID_MADRE")
    				TXTCURSO.Text = dt.Rows(0).Item("CURSO")
    				TXTDIRECCION.Text = dt.Rows(0).Item("DIRECCION")
    				TXTTELEFNO.Text = dt.Rows(0).Item("TELEFONO")
    			Else
    				MsgBox("NO EXISTE DATO", vbCritical, "¡ATENCION!")
    				LIMPIAR()
    			End If
    		End Using
    	Catch ex As Exception
    		MessageBox.Show(ex.Message)
    	End Try
    End If


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    miércoles, 7 de diciembre de 2016 19:19