Banco de dados (campo de autonumeraÇÃo)

9 respostas
Chandruba

Fala aí, pessoal.
Tô com um problema.
Tenho uma tabela CLIENTE que possui um campo de AUTONUMERACAO codigo_cliente.
Quero saber como posso obter, a partir do banco de dados, o valor desse campo antes de adicionar um novo cliente ao banco.
EX.:
Cliquei em ADICIONAR CLIENTE -> abre um formulário com o JTextField CODIGO referente a codigo_cliente já preenchido. Só tenho que preencher os outros campos…

Abraço,

Valeu!![/u]

9 Respostas

_fs

Qual bando de dados está usando? Qual a versão dele? Qual driver está usando para se conectar ao banco?

Alguns drivers possuem um método para pegar as Primary Keys geradas numa consulta.

ah
[/i]

dsiviotti

Depende. Qual é o Banco de Dados que você está usando?

Chandruba

To usando o ACCESS.
DRIVER: sun.jdbc.odbc.JdbcOdbcDriver

_fs

http://onesearch.sun.com/search/developers/index.jsp?col=javaforums&qp=forum%3A48&qt=auto+increment+ms+access&x=0&y=0
http://forum.java.sun.com/thread.jsp?forum=48&thread=368826

keller

Que tal assim… no metodo construtor de sua classe vc conecta no banco pega o ultimo registro e o guarda em uma variavel ?

public
class Cadastro
{

String ultima_id;

public Cadastro()
{
MetodoDePesquisa();

// Continue seu programa..

}

public
void MetodoDePesquisa()
{
...
ultima_id = rs.getString("codigo_cliente");
}

}

Explicação:
No metodo construtor antes de tudo ele pesquisa a ultima id e deixa guardada na String ultima_id… e depois continua tendo assim desde o inicio da classe a ultima_id inserida no banco…

Espero ter ajudado… :wink:

Chandruba

Assim dá certo.!

Mas…

Não funciona para o primeiro cliente a ser cadastrado!!
Deve ter alguma maneira de conseguir pegar esse valor de autoincrement

to tentando aqui…!

Valeu, velho!

Rafael_Steil

Para o primeiro? a tua consulta nao vai retornar dados ou null, e ai eh soh vc setar o valor default para 1

Rafael

Chandruba

Valeu velho! Sua dica deu certo!!

keller

funcionou a dica então ? :smiley:

Criado 21 de setembro de 2004
Ultima resposta 23 de set. de 2004
Respostas 9
Participantes 5