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

[SOLUCIONADO] la función no se ejecuta por completo, por que?

Estas en el tema de la función no se ejecuta por completo, por que? en el foro de Java en Foros del Web. Hola amigos tengo un problema y no entiendo que es, resulta que tengo una función que me agrega un dato a una base de datos ...
  #1 (permalink)  
Antiguo 18/10/2015, 19:52
 
Fecha de Ingreso: junio-2011
Mensajes: 39
Antigüedad: 13 años, 6 meses
Puntos: 0
la función no se ejecuta por completo, por que?

Hola amigos tengo un problema y no entiendo que es, resulta que tengo una función que me agrega un dato a una base de datos y pues ay todo anda bien, el dato se agrega pero por alguna razón que desconozco no se termina de ejecutar toda la función

Código HTML:
String InsertarDatos(String DNI,String Nombre,String Apellido,Integer Edad) throws ClassNotFoundException, SQLException{
     Class.forName("org.postgresql.Driver");
     Connection Conexion = DriverManager.getConnection("jdbc:postgresql://localhost:5432/tienda", "postgres", "1234567890");
     java.sql.Statement SentenciaSQL = Conexion.createStatement();
     ResultSet resultado = SentenciaSQL.executeQuery("Insert into DatosPersonales (DNI,Nombre,Apellido,Edad) values("+DNI+",'"+Nombre+"','"+Apellido+"',"+Edad+")");
     resultado.close();
     Conexion.close();
     SentenciaSQL.close();
     return "Se inserto";
    }
para probar le agregue al return "Se inserto", cuando ejecuto esta función nunca me imprime el "se inserto".

pero si borro todo excepto el return "Se inserto"; y lo ejecuto, si me imprime el se inserto, no entiendo por que cuando agrega mi dato a la base de datos no continua la ejecución.

Alguien sabe a que se debe?

gracias
  #2 (permalink)  
Antiguo 19/10/2015, 12:28
 
Fecha de Ingreso: junio-2011
Mensajes: 39
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: la función no se ejecuta por completo, por que?

aqui mi solucion al problema ya que nadie ayudo..

Código HTML:
String InsertarDatos(String DNI,String Nombre,String Apellido,Integer Edad) {
         try {
             Class.forName("org.postgresql.Driver");
             Connection Conexion = DriverManager.getConnection("jdbc:postgresql://localhost:5432/tienda", "postgres", "1234567890");
             java.sql.Statement SentenciaSQL = Conexion.createStatement();
             ResultSet resultado = SentenciaSQL.executeQuery("Insert into DatosPersonales (DNI,Nombre,Apellido,Edad) values("+DNI+",'"+Nombre+"','"+Apellido+"',"+Edad+")");
             resultado.close();
             Conexion.close();
             SentenciaSQL.close();
             return html.html();
         } catch (SQLException ex) {
             Logger.getLogger(insertar.class.getName()).log(Level.SEVERE, null, ex);
         } catch (ClassNotFoundException ex) {
             Logger.getLogger(insertar.class.getName()).log(Level.SEVERE, null, ex);
         }
         return html.html();
    }
pero sigo sin entender por que no se termina de ejecutar la función..
  #3 (permalink)  
Antiguo 20/10/2015, 12:11
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 7 meses
Puntos: 306
Respuesta: la función no se ejecuta por completo, por que?

Si dices que con el primer código no te funcionaba, es imposible que con el segundo te haya funcionado.

En el segundo código pase lo que pase te devolverá html.html(), pero no creo que esté insertando el registro.

Un insert no es algo que devuelva un resultSet, deberías usar executeUpdate

http://docs.oracle.com/javase/7/docs...Statement.html
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: completo, ejecuta, sql, string
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 23:28.