Ayuda para insertar datos a mysql.

0 votos
preguntado por Jendry (120 puntos) Ene 28, 2016 en Java
Saludos. Estoy realizando un pequeño proyecto con Netbeans y Mysql, se trata de un sistema de consultas para pacientes requerido por la institucion educativa. Tengo algunas fases de sesion q e logrado conseguir y estoy trancado en la parte de insersion de datos para la base q deseo manejar. El sistema posee una BD con el q inicio sesion y hasta ahi trabaja bien. El problema es q quiero insertar nuevos datos y cuando los ingreso no sucede nada, lanza errores..

Codigo..

<pre lang='java'>  private void guardarActionPerformed(java.awt.event.ActionEvent evt) {
            int resp;
        resp=JOptionPane.showConfirmDialog(null, "¿Desea grabar el registro?", "Pregunta",0);
        if (resp==0)
          {

         conexion conectar = new conexion();
         Statement st =conectar.conectar();

            try
            {

         String usuario, contra, comando;
         usuario=tnombre.getText();
         contra=tpass.getText();
         comando="INSERT INTO registros (usuarios, contraseña) VALUES ('','')";
         comando=comando+"('"+tnombre.getText()+"', '"+tpass.getText()+"',1)";
         st.executeUpdate(comando);
         conexion.close();

            }
            catch (SQLException e)
            {
                JOptionPane.showConfirmDialog(null, "ERROR "+e.toString());
            }
        }

    }
Y este es otro codigo q tambien e tratado..

<pre lang='java'>private void guardarActionPerformed(java.awt.event.ActionEvent evt)
int resp;
        resp=JOptionPane.showConfirmDialog(null, "¿Desea grabar el registro?", "Pregunta",0);
        if (resp==0)
          {

         conexion conectar = new conexion();
         Statement st =conectar.conectar();

         try {
             String usuario, contra;
             usuario=tnombre.getText();
             contra=tpass.getText();
            st.executeUpdate("INSERT INTO registros (usuarios, contraseña) VALUES ('" + usuario.get("nombre") + "','" + contra.get("contraseña") + "')");
        } catch (SQLException ex) {
            System.out.println(ex);
        }
    }
Me da estos errores:

>>hemos conectado con  jdbc:mysql://localhost/java ... Ok

Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: Uncompilable source code..........................

>>Column count doesn´t match valúe count at row 1

La cuenta de columna no empareja la cuenta de valor en la fila 1

El asunto es q no puedo ingresar los datos extraidos de un form, osea necesito ingresar 2 campos para luego iniciar una sesion con ellos. Tengo una clase llamada conexion y un BD con dos tablas hasta ahora. Si tienen un codigo lo agradeceria. Necesito mucha ayuda, soy nuevo con java y netbeans. Mil gracias...


1 Respuesta

0 votos
respondido por Torres (8,580 puntos) Ene 28, 2016
Buenas,

Comprueba que los nombres de las columnas de tu tabla coincidan con los que tienes en el código.

Echale un vistazo a este tutorial, puede servirte de ayuda.

http://www.chuidiang.com/java/mysql/mysql-java-basico.php

Un saludo


Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código
...