Ver Mensaje Individual
  #7 (permalink)  
Antiguo 25/01/2015, 23:39
roeboy2
 
Fecha de Ingreso: enero-2015
Mensajes: 14
Antigüedad: 9 años, 3 meses
Puntos: 0
Respuesta: Obtener valor max de jTxt en java y PostgreSQL

Te agradezco por las respuestas y disculpa mi terquedad y efectivamente haciendo como dices: solo guardar los 2 campos funciona perfecto ya que mi bd esta configurado para autoincrementar.
Pero al navegar por mi tabla persona con boton siguiente y atras me posiciono en un registro "x", y en los 3 campos visualizo los valores... hasta ahi perfecto, cuando trato de agregar un nuevo registro con un boton nuevo los 3 campos hago que esten vacios con un "" y el campo codigo pongo en disable para que la bd de datos ponga un valor por mi y completo 2 campos restantes. Ahí es que me aparece el error ya que se agregó como codigo "" y esas comillas la bd entiende como string y para que esto no ocurra quiero obtener el valor mayor de mi codigo y sumarle 1 numero para agregar.

Código Java:
Ver original
  1. try{
  2.             Conexion conexion = new Conexion();
  3.             PreparedStatement instruccion=conexion.conexion.prepareStatement("INSERT INTO \"public\".\"Persona\"  VALUES (?,?,?)");
  4.                                
  5.             //lo correcto es este si se inserta manualmente un id
  6.             instruccion.setInt(1, Integer.parseInt(txt_codigo.getText()));
  7.  
  8.             //Pero yo quiero obtener el valor maximo de mi id a través de la variable ultimonumero para agregar a mi txt_codigo, pero mi no reconoce ni como string ni como int ese valor obtenido... como soluciono?...
  9.             Statement ultimonumero= conexion.conexion.createStatement();
  10.             ultimonumero.executeUpdate("SELECT MAX('per_codigo')+1 FROM \"public\".\"Persona\"");
  11.             instruccion.setInt(1, Integer.parseInt(ultimonumero.getText()));
  12.             instruccion.setString(2, txt_nombre.getText());
  13.             instruccion.setString(3, txt_telefono.getText());
  14.             instruccion.executeUpdate();
  15.            
  16.             JOptionPane.showMessageDialog(null, "Registro Guardado");
  17.             bloquear();
  18.        }catch(Exception e){
  19.            JOptionPane.showMessageDialog(null, "Problema al guardar"+e);
  20.        }

Y disculpen mi terquedad...