Article View: es.comp.lenguajes.java
Article #443Re: Error al recuperar rs en Modo debug
From: Flint
Date: Tue, 30 Oct 2007 18:45
Date: Tue, 30 Oct 2007 18:45
84 lines
3916 bytes
3916 bytes
On Tue, 30 Oct 2007 03:24:39 -0700, Diego
<diego_arcidiacono@hotmail.com> wrote:
>Hola, espero puedan ayudarme pues me he vuelto loco con este errror!!
>El tema es que cada vez que ejecuto el programa en modo degub me da un
>error al acceder a los elementos del ResultSet.
>Es como que cuando arma el rs lo hace mal y luego en el acceso a los
>campos de una fila del misma da error.
>Lo peor de todo es que sin modo debug anda, pero en debug no. Yo no se
>si a alguien le a pasado esto alguna vez. Tengo conexion ODBC sobre un
>MSSQL server 2000. Le dejo un ejemplo de codigo. Les agradezco
>inmensamente.
>Diego
>
No te lo tomes a mal, pero tu c�digo tiene alg�n defectillo. En primer
lugar no se cierra la conexi�n (malo) y luego capturas directamente un
exception as� a pi��n (malo) y no escribes la traza (malo tambien) con
lo que no sabes cu�l es la causa raiz de tu problema.
Cambia tu c�digo por este:
public static void main(String[] args) {
ResultSet rs = null;
Connection con = null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
/*** Crear conexi�n con base de datos ***/
con = DriverManager.getConnection("jdbc:odbc:SCAP");
/***** Definir sentencia y ejecutarla ********/
Statement sentencia = con
.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = sentencia
.executeQuery("SELECT A.codigo as codigo,A.descripcion
as descripcion FROM TArticulo A WHERE A.eliminado IS null");
while (rs.next()) {
System.out.println(rs.getString("codigo") + ", "
+ rs.getString("descripcion"));
}
rs.close();
} catch (ClassNotFoundException e) {
System.err.println("Clase sun.jdbc.odbc.JdbcOdbcDriver no se
pudo cargar");
e.printStackTrace();
} catch (SQLException e) {
System.err.println("Error de SQL al ejecutar statement");
e.printStackTrace();
} finally {
if(con != null) {
try {
con.close();
} catch (SQLException e) {
System.err.println("No se pudo cerrar la conexion.");
e.printStackTrace();
}
}
}
}
Cuando lo ejecutes, deber�a salirte en consola la traza. La m�a sale
as� porque, evidentemente, no tengo definido el DSN ni tengo esa base
de datos. A t� te saldr� otra cosa. Ejemplo:
Error de SQL al ejecutar statement
java.sql.SQLException: [Microsoft][Administrador de controladores
ODBC] No se encuentra el nombre del origen de datos y no se especific�
ning�n controlador predeterminado
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at es.prueba.Prueba.main(Prueba.java:21)
Dinos qu� te sale en la traza y a ver si te podemos ayudar. De
momento, f�jate en c�mo est�n capturadas las excepciones y c�mo se usa
la cl�usula finally para cerrar la conexi�n.
Technical Details
Message-ID:
<7juei3lgedo27nltn4011otbutcpablcm5@4ax.com>Path:
arc1-ca.pugleaf.net!g2news2.google.com!news3.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mailReferences:
<1193739879.735242.75750@o80g2000hse.googlegroups.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 1116f3,a6eb45d6e2b4b090 X-Google-Attributes: gid1116f3,public,usenet X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news2.google.com!news3.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Flint <flint@dirfalsa.es> Newsgroups: es.comp.lenguajes.java Subject: Re: Error al recuperar rs en Modo debug Date: Tue, 30 Oct 2007 19:45:43 +0100 Lines: 85 Message-ID: <7juei3lgedo27nltn4011otbutcpablcm5@4ax.com> References: <1193739879.735242.75750@o80g2000hse.googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: individual.net VS1relaEWvZMKPpyBN+0RwxRFCxBbV6aQssRq9IlwRSIXARBQy Cancel-Lock: sha1:Mqs6sxfdWvhnMz7RCZbnf5om16U= X-Newsreader: Forte Agent 4.2/32.1118