none
ERROR EN EXECUTENONQUERY. NO ME DEJA GUARDAR LOS VALORES DE COMBOBOX EN BASE DE DATOS RRS feed

  • Pregunta

  • Hace varias semanas que estoy con el mismo problemita y no puedo solucionarlo. Un error supuestamente de INSERT.. 
    Te paso código.. 
    El problema es que cuando quiero guardar los datos a la bd , no hace el executenonquery por un error de insert.. El error está cuando levanto los valores que hay en dos combobox.. 
    Usé las paradas y cuando llega al INSERT INTO, me levanta bien los datos, en las variables LOCAL y VISITANTE.. pero después no puede guardarlos... 

    Dimensione las variables local y visitante tipo STRING. 

     Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress
            If e.KeyChar = Chr(13) Then
                If ComboBox1.Text = "" Or IsNumeric(ComboBox1.Text) Then
                    ComboBox1.Focus()
                Else
                    LOCAL = ComboBox1.Text
                    ComboBox1.Enabled = False
                    ComboBox2.Focus()
                End If
            End If
        End Sub

        Private Sub ComboBox2_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox2.KeyPress
            If e.KeyChar = Chr(13) Then
                If ComboBox2.Text = "" Or IsNumeric(ComboBox2.Text) Then
                    ComboBox2.Focus()
                Else
                    VISITANTE = ComboBox2.Text
                    ComboBox2.Enabled = False
                    Button1.Focus()
                End If
            End If
        End Sub


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            reconectar()
            C = C + 1
            comando = New OleDbCommand("INSERT INTO FIXTURE(COD_TORNEO,COD_PARTIDO,LOCAL,VISITANTE,AÑO) VALUES(" & torneo & ", " & C & ", '" & LOCAL & "' ,'" & VISITANTE & "' ," & Module1.año & ")", conexion)
            comando.ExecuteNonQuery()
            MsgBox("Hecho!")
        End Sub
    lunes, 20 de mayo de 2019 21:12

Respuestas

  • ¿Qué dice exactamente el mensaje de error que se produce al ejecutar la instrucción INSERT? Mi sospecha es que puede ser culpa de la columna "AÑO", que al contener el carácter no-Ascii "Ñ" requiere utilizar un identificador acotado: [AÑO].

    Pero eso es solo una suposición, sería mucho más fácil dar una respuesta si supiésemos cuál es exactamente el error. Esto lo hemos dicho muchas veces en el foro: resulta difícil comprender por qué la gente pone en sus preguntas que "me sale un error". ¿Qué trabajo les costaría decir cuál es el error que sale? La diferencia es inmensa desde el punto de vista del que tiene que averiguar cuál es el problema para dar una respuesta.

    lunes, 20 de mayo de 2019 21:48

Todas las respuestas

  • ¿Qué dice exactamente el mensaje de error que se produce al ejecutar la instrucción INSERT? Mi sospecha es que puede ser culpa de la columna "AÑO", que al contener el carácter no-Ascii "Ñ" requiere utilizar un identificador acotado: [AÑO].

    Pero eso es solo una suposición, sería mucho más fácil dar una respuesta si supiésemos cuál es exactamente el error. Esto lo hemos dicho muchas veces en el foro: resulta difícil comprender por qué la gente pone en sus preguntas que "me sale un error". ¿Qué trabajo les costaría decir cuál es el error que sale? La diferencia es inmensa desde el punto de vista del que tiene que averiguar cuál es el problema para dar una respuesta.

    lunes, 20 de mayo de 2019 21:48
  • Hola, si, modifique todos los campos que contengan el año, sacando la Ñ... 

    Perdón.. 

    ERROR EN SINTAXIS INSERT.. 

    -Los combobox se rellenan a partir de una tabla de la base de datos.. luego al presionar enter me guarda el valor en las variables, LOCAL Y VISITANTE.. 

    lunes, 20 de mayo de 2019 22:12
  • ¿Todavía da el error después de sacar la Ñ? Si es así, párate con el debugger justo después de construir la INSERT y copia el texto completo que te ha generado para la sentencia en tiempo de ejecución y pónnosla aquí, a ver si vemos cuál es el error de sintaxis.
    • Propuesto como respuesta Carlos_Ruiz_M martes, 21 de mayo de 2019 19:17
    martes, 21 de mayo de 2019 6:04