Java – JDBC valores nulos

diciembre 13, 2010

Si tuvieramos una consulta como la siguiente

select nombre, salario
from empleados;

y luego quisieramos leer los valores mediante un ResultSet de la siguiente forma

ResulSet rst=command.executeQuery(sql);
String nombre;
Float salario;
while(rst.next()){
   nombre=rst.getString(“nombre”);
   salario=rst.getFloat(“salario”);
}

Si tuvieramos registros con valores nulos en la tabla de empleados, la variable nombre si sería nula pero la variable salario tendría el valor cero. Esto tal vez no sea lo que esperabamos, así que, ¿cómo evitamos esto? Bueno, pues para verificar si un campo tiene el valor nulo lo hariamos de la siguiente forma

ResulSet rst=command.executeQuery(sql);
String nombre;
Float salario;
while(rst.next()){
   nombre=rst.getString(“nombre”);
   if(rst.wasNull()){
      nombre=null; //aqui no es necesario, ya que para las cadenas si nos regresa el valor “null”
   }
   salario=rst.getFloat(“salario”);
   if(rst.wasNull()){
      salario=null; //aqui si es necesario, de lo contrario, salario tendría el valor cero
   }
}

Fuentes:
http://archives.postgresql.org/

Anuncios

2 comentarios to “Java – JDBC valores nulos”

  1. ignorante Says:

    Jamás uses ni un float ni un double para salarios. En general float y double no se deben usar para manejar montos de dinero.
    La explicación
    http://wp.me/p50WQ-e
    http://wp.me/p50WQ-T


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: