Java - problemas con las bases de datos

 
Vista:

problemas con las bases de datos

Publicado por david (16 intervenciones) el 31/07/2001 13:10:44
Si en una base de datos, hago un INSERT, y continuacion un SELECT, a la base de datos no lo da tiempo a refrescarse, y no me lee nada. Alguien sabe como hacer que se espere un poco antes de ejecutar la siguiente instruccion
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:problemas con las bases de datos

Publicado por ban (15 intervenciones) el 31/07/2001 18:02:04
para que la base de datos de refresque usa el metodo commit antes del select
ej:
Statement stmt;
Conection con;
son.setAutoCommit(false);
stmt.executeUpdate(insert);
con.commit();
stmt.executeQuery(select);

y debiera funcionar
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

RE:problemas con las bases de datos

Publicado por david (16 intervenciones) el 01/08/2001 11:01:38
Connection C=null;Statement Stmt=null;ResultSet myResult=null;try{
Class.forName\"sun.jdbc.odbc.JdbcOdbcDriver\").newInstance();
C = DriverManager.getConnection(\"jdbc:odbc:\" + base);
C.setAutoCommit(false);
Stmt = C.createStatement();
myResult = Stmt.executeQuery(peticion);
C.commit();

Al ejecutar este codigo, me salta la siguiente excepcion. Muchas gracias por anticipado
java.sql.SQLException: [Microsoft][Administrador de controladores ODBC] Error en la secuencia de la función
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

RE:problemas con las bases de datos

Publicado por Jon (68 intervenciones) el 02/08/2001 13:21:35
Creo que el problema es que al hacer el commit te cierra los cursores abiertos. Por tanto, si luego intentas acceder a registros de myResult, te va a dar error.

Prueba a ponerlo más tarde. Me queda la duda si sería necesario poner un commit, ya que al hacer un select no estás modificando registros en la base de datos ..... ¿alguien lo sabe?

De todas formas, eso que decías del refresco era un poco raro. Se supone que con el AutoCommit a true no te tendría que dar problemas al hacer un insert y luego un select.
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

RE:problemas con las bases de datos

Publicado por ban (15 intervenciones) el 31/07/2001 18:02:21
para que la base de datos de refresque usa el metodo commit antes del select
ej:
Statement stmt;
Conection con;
con.setAutoCommit(false);
stmt.executeUpdate(insert);
con.commit();
stmt.executeQuery(select);

y debiera funcionar
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

RE:problemas con las bases de datos

Publicado por Luis (18 intervenciones) el 11/08/2001 05:24:56
Verifica si el commit esta en false por default en tu instlacion. Normalmente esta en true. Si esta en false hace el connect y el autocommit true y cerra cla conexion, y des pues el insert y el select seguido y ahi deberia funcionar.

Saludos
Luis
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