none
no coinciden los tipos de datos en la expresion de criterio RRS feed

  • Pregunta

  • buenas dias, tardes, noches.... tengo un inconveniente que quisiera resulver... tengo una aplicacion conectada  a una base de datos access, en donde para guardar registros tengo un boton y al presionar me salta "no coinciden los tipos de datos en la expresion de criterio" tengo entendido que es por que en criterios no pones el tipo de campo adecuado, pero desconozco como colocarlo en el codigo, que paso a continuacion:

    "Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Try
                con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\HomicidiosBD.accdb"
                con.Open()

                comando = New OleDbCommand("Insert into Causas(Expte,Legajo,FechaIngreso,Procedencia,Tipo,Delito,Caratula,Damnificado,Acusado,Detenido,FechaHecho,LugarHecho,Instructor,Fiscal,BreveResumen,Elevado,Esclarecido,FechaElevacion,Observaciones)" &                               "values(ExpteTextBox,LegajoTextBox,FechaIngresoDateTimePicker,ProcedenciaComboBox,TipoComboBox,DelitoComboBox,CaratulaTextBox,DamnificadoTextBox,AcusadoTextBox,DetenidoTextBox,FechaHechoDateTimePicker,LugarHechoTextBox,InstructorComboBox,FiscalTextBox,BreveResumenTextBox,ElevadoCheckBox,EsclarecidoCheckBox,FechaElevacionDateTimePicker,ObservacionesTextBox)", con)

                comando.Parameters.AddWithValue("@Expte", ExpteTextBox.Text)
                comando.Parameters.AddWithValue("@Legajo", LegajoTextBox.Text)
                comando.Parameters.AddWithValue("@FechaIngreso", FechaIngresoDateTimePicker)
                comando.Parameters.AddWithValue("@Procedencia", ProcedenciaComboBox.DisplayMember)
                comando.Parameters.AddWithValue("@Tipo", TipoComboBox.DisplayMember)
                comando.Parameters.AddWithValue("@Delito", DelitoComboBox.DisplayMember)
                comando.Parameters.AddWithValue("@Caratula", CaratulaTextBox.Text)
                comando.Parameters.AddWithValue("@Damnificado", DamnificadoTextBox.Text)
                comando.Parameters.AddWithValue("@Acusado", AcusadoTextBox.Text)
                comando.Parameters.AddWithValue("@Detenido", DetenidoTextBox.Text)
                comando.Parameters.AddWithValue("@FechaHecho", FechaHechoDateTimePicker)
                comando.Parameters.AddWithValue("@LugarHecho", LugarHechoTextBox.Text)
                comando.Parameters.AddWithValue("@Instructor", InstructorComboBox.DisplayMember)
                comando.Parameters.AddWithValue("@Fiscal", FiscalTextBox.Text)
                comando.Parameters.AddWithValue("@BreveResumen", BreveResumenTextBox.Text)
                comando.Parameters.AddWithValue("@Elevado", ElevadoCheckBox.CanSelect)
                comando.Parameters.AddWithValue("@Esclarecido", EsclarecidoCheckBox.CanSelect)
                comando.Parameters.AddWithValue("@FechaElevacion", FechaElevacionDateTimePicker)
                comando.Parameters.AddWithValue("@Observaciones", ObservacionesTextBox.Text)

                comando.ExecuteNonQuery()
                MsgBox("Causa Guardada Correctamente", vbInformation, "Aviso")
            Catch ex As Exception
                MsgBox(ex.Message)

            End Try
            con.Close()
            Me.Close()
        End Sub"

    Pd: en los combobox, tengo tablas relacionadas.- desde ya muchas gracias saludos...

    domingo, 4 de noviembre de 2018 23:24

Respuestas

  • Hola:

    Los parámetros que tienes declarados no afectan a la instrucción sql de inserción de registros. Le tienes que pasar a la misma dichos parámetros para que cojan los VALUES correctos.

    Por ejemplo:"values(ExpteTextBox,LegajoTextBox,FechaIngreso … tendrías que ponerlo así.

    Values(@Expte, @Legajo, @FechaIngreso …. etc.

    Es decir, sustituyes el campo de texto, por el valor de su parámetro.

    Un saludo.

    Gemma

    lunes, 5 de noviembre de 2018 7:22