Preciso recuperar o id logo apos a sua inserção no BD, pra distribuir, por exemplo em outras tabelas a fim de fazer relacionamentos. Já procurei por métodos em algumas classes que retornam resultados de consultas e não consegui também procurei na net e não encontrei nada que ajudasse. Agradeço a atenção e ajuda de todos.
int executeUpdate(String sql, int autoGeneratedKeys)
Executes the given SQL statement and signals the driver with the given flag about whether the auto-generated keys produced by this Statement object should be made available for retrieval.
int executeUpdate(String sql, int[] columnIndexes)
Executes the given SQL statement and signals the driver that the auto-generated keys indicated in the given array should be made available for retrieval.
int executeUpdate(String sql, String[] columnNames)
Executes the given SQL statement and signals the driver that the auto-generated keys indicated in the given array should be made available for retrieval.
Alô pessoal como estou iniciando em java e não tenho ainda muita experiência resolvi momentaneamente da seguinte maneira:
Criei dentro da minha classe de repositório três métodos:
1° método - Salva o cadastro principal (clientes) que é de onde vai sair o identificador.
2° método - recupero esse mesmo id com “SELECT MAX(idCliente)”.
e um 3° método que faz a distribuição desse id nas outras tabelas que eu precisar.
Pode não ser a melhor maneira, mas funciona. O ideal acho que seria recuperar esse id com alguma função pra evitar o uso de todos esses insert’s e select’s.
Se alguém souber de alguma função desse tipo, a dica será muito bem vinda. Valeu! :lol:
[quote=mjava]Alô pessoal como estou iniciando em java e não tenho ainda muita experiência resolvi momentaneamente da seguinte maneira:
Criei dentro da minha classe de repositório três métodos:
1° método - Salva o cadastro principal (clientes) que é de onde vai sair o identificador.
2° método - recupero esse mesmo id com “SELECT MAX(idCliente)”.
e um 3° método que faz a distribuição desse id nas outras tabelas que eu precisar.
Pode não ser a melhor maneira, mas funciona. O ideal acho que seria recuperar esse id com alguma função pra evitar o uso de todos esses insert’s e select’s.
Se alguém souber de alguma função desse tipo, a dica será muito bem vinda. Valeu! :lol: [/quote]
Nao precisa dar um “select max(idcliente)” esses metodos que eu te passei retornam o id que vc acabou de inserir no banco.