Java - Problemas con SQLSERVER desde JAVA

 
Vista:

Problemas con SQLSERVER desde JAVA

Publicado por Mariojulio Zaldivar (3 intervenciones) el 07/03/2007 21:47:43
Hola a todos
Tengo un gran problema con una consulta (verdaderamente sencilla....).
Esta consulta esta hecha desde java para comunicarse con MSSQL SERVER; la he tipeado como sigue:

public long getLastId(){

String sql;
sql= "SELECT MAX(PROCESS_ID) from COD_REV_REC";

try{
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(sql);
gotId = rs.getLong("PROCESS_ID");

}catch(SQLException e){
System.err.println("No se pueden obtener las tablas de la base de datos, o no es SQL server 2000");
e.printStackTrace();
}

return gotId;
}

Lo cual me retorna el siguiente error:

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid column name: PROCESS_ID
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getColumnOrdinal(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
....Y SE CAE EN LA LINEA DE CODIGO:
gotId = rs.getLong("PROCESS_ID");

Como ven, es un método para obtener el codigo mayor de la columna "PROCESS_ID"
Este metodo corre sin problemas en tro programa que hice. La unica diferencia entre aquel programa y este, es que el primero se conecta mediante ODBC y el que actualemente me da problemas, se conecta mediante el Driver de Microsoft para SQLSERVER(JDBC)

Pense que derepente era por el alias de la columna, es decir, la consulta la cambie por esta linea
sql= "SELECT MAX(PROCESS_ID) AS Maximo from COD_REV_REC";
y luego la variable gotId le pase este valor:
gotId = rs.getLong("Maximo");

El hecho es que al ejecutar mi programa, me sale el siguiente error:

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid operation for the current cursor position.
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.validateCursorPosition(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)

...Y SE VUELVE A CAER EN LA MISMA LINEA
gotId = rs.getLong("Maximo");

ALGUNA IDEA??

Agredeceria mucho su ayuda

Mariojulio Zaldivar
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 SQLSERVER desde JAVA

Publicado por Mario (622 intervenciones) el 07/03/2007 22:31:20
noesidoyo ya contesto la pregunta, exactamente es ese el problema !!!!
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 SQLSERVER desde JAVA

Publicado por Mariojulio Zaldivar (3 intervenciones) el 07/03/2007 22:41:41
Y donde puedo encontrar esa respuesta? .
Gracias
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 SQLSERVER desde JAVA

Publicado por Mario (622 intervenciones) el 08/03/2007 00:07:50
La respuesta esta precisamente abajo de este post jajaja. ya que tu colocaste dos post.
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

Problemas con SQLSERVER desde JAVA

Publicado por Beto Rios (1 intervención) el 28/07/2011 00:06:04
Hola Mario, tengo el mismo problema, podrias decirme como lo resolviste por favor.
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