This publicación mostró la ejecución de múltiples consultas en una sola invocación JDBC (en una base de datos SQL Server) separándolas con punto y coma. Cuando traté de hacer lo mismo con Oracle 10G, un error de "carácter no válido" apuntalado:JDBC: devolver varios conjuntos de resultados mediante una única invocación de base de datos: no funciona para Oracle
class db
{
public static void main(String aa[])throws Exception
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@//192.168.10.29:1521/ttt","username","password");
PreparedStatement stat = conn.prepareStatement("select voila from app where rownum<4; select code from process where rownum<4");
stat.execute();
while (stat.getMoreResults()){
ResultSet rs = stat.getResultSet();
while (rs.next()){
System.out.println(rs.getString(1));
}
}
conn.close();
}
}
¿Qué estoy haciendo mal?
Gracias. Pero, ¿hay alguna forma de que no tenga que hacer 2 llamadas a db por separado? – Daud
Si los dos selectores devuelven los mismos tipos, puede usar union. Pero es una verdadera práctica MALO –
@Daud: no, necesitas dos llamadas. –