20/02/2013, 09:59
|
| | Fecha de Ingreso: marzo-2007
Mensajes: 17
Antigüedad: 17 años, 9 meses Puntos: 0 | |
Consulta a Base de datos vía ODBC (jdbc) Saludos, desde hace algun rato me encuentro en un bache que no me permite avanzar...
El caso es que tengo una conexion a una base de datos tipo sql-anywhere de sybase cuyo servidor se encuentra en otra pc. En mi pc utilizo un origen de datos tipo ODBC para hacer la conexion con el servidor de sybase, mientras que en JAVA hago la conexion al origen de datos ODBC.
Mi problema radica en que cuando hago una consulta por medio de la conexion que en java es el driver jdbc-odbc a la base de datos sybase accesando a un stored procedure, no me devuelve resultado alguno siempre es 0 el numero de registro que devuelve, por otro lado genero un reporte por medio del ireport y sin embargo si me muestra el informe de manera correcta...
Estoy seguro que el problema radica en la manera como hago la consulta no se si es el sql que uso o si es por el tipo de llamada de java (PreparedStatement - CallableStatement)... igual paso a darles el codigo para ver si tienen una idea de cual puede ser mi error:
uso unos metodos creados por mi para hacer la conexion al odbc...
AdminBD c = new AdminBD();
c.AbrirConexion(0);
CallableStatement ej= c.getConexionPool().prepareCall("{call \"DBA\".fact_rep_documentos_productos_pines_01( ?, ?, ?, ?, ?, ?, ?, ? )}");
ej.setString(1, "003");
ej.setString(2, "2013/01/01");//cadenaFecha1);
ej.setString(3, "2013/02/15");//cadenaFecha2);
ej.setString(4, "FV/NV/TV");
ej.setString(5, "001/002/003/004/005/006/007/008/009/");
ej.setString(6, "0011");
ej.setString(7, "013/002/017/004/014/007/008/006/012/015/005/016/003/001/011/009/010");
ej.setString(8, "N");
ej.executeQuery();
Este es un metodo creado por mi para asignar un resultSet a mi conexion...
c.setRegistrosBD(ej.getResultSet());
Muestra el numero de registros devueltos por el stored procedure:
System.out.println( c.getRegistrosBD().getRow());
System.out.println( ej.getResultSet().getRow());
el resultado siempre es 0... |