Java - AYUDA: INSERT EN BD NO INSERTA

 
Vista:

AYUDA: INSERT EN BD NO INSERTA

Publicado por luiyi (16 intervenciones) el 10/04/2006 22:51:20
Saludos. Experimentando con esto de las BD con java, tengo este codigo para insertar datos a una tabla. El proceso es: La clase Gui.java envia los datos a insertar a una clase llamada Producto.java que contiene procedimientos para setXXX y getXXX donde XXX es el nombre de campo de los campos de la tabla en cuestion. Por ultimo en Gui.java se hace un llamado a ConexionAccess.java con el fin de insertar los datos por medio de esta ultima clase que se encarga de hacer la conexion a la BD e implementa los procedimientos de operacion de tabla. De tal modo que el procedimiento para insercion llamado por medio de la clase Gui.java es:

public void agregarProducto(Producto producto) throws SQLException
{
try
{
System.out.println("iniciando...");
conexion.setAutoCommit(false);
String sqlexec ="insert into producto(id,desc,precio,stock) values (?,?,?,?)";

PreparedStatement preparedStatement = conexion.prepareStatement(sqlexec);
System.out.println("seteando datos de Statement");
preparedStatement.setString(1,producto.getId());
preparedStatement.setString(2,producto.getDesc());
preparedStatement.setString(3,producto.getPrecio());
preparedStatement.setString(4,producto.getStock());
System.out.println("datos seteados");
preparedStatement.executeUpdate();
System.out.println("Statement seteado...");
conexion.commit();
System.out.println("guardando...");
/*preparedStatement.close();*/
conexion.setAutoCommit(true);
}

catch(SQLException sqex)
{
conexion.rollback();
/*conexion.close();*/
}
}

El problema esque tanto con una base de datos Access como con una base de datos MySQL llamada tienda y con una tabla producto, parece ejecutarse todas las instrucciones hasta antes del conexion.commit(); de modo que los datos NUNCA llegan a la BD. He puesto esos printlns para darme una idea de donde se queda la secuencia y parece ser que es antes del commit.

Si alguien puede darme una idea de lo pudiese estar sucediendo le estaré muy agradecido.
Luiyi.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AYUDA: INSERT EN BD NO INSERTA

Publicado por c (28 intervenciones) el 11/04/2006 08:15:05
Seria muy util que pusieras el tipo de excepcion que te da. Pon un sqex.printStackTrace() en el catch.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar