Auto Increment com banco de dados firebird

3 respostas
S

Boa noite pessoal.

Sou novo aqui no forum, e também estou iniciando a programação em Java. Minha duvida é a seguinte:

Estou fazendo uma aplicação para entregar na faculdade onde estou utilizando o banco de dados Firebird. Habilitei o AutoIncrement já no próprio banco, más não consigo utilizar no Java. Abaixo segue um trecho do código que estou utilizando, se alguém puder me ajudar fico agradecido.

private void jButton_SalvarActionPerformed(java.awt.event.ActionEvent evt) {

Cidade  c1 = new Cidade();
        Estado c2 = new Estado();
        Random generator = new Random();        
        
        c1.setCodCidade(generator.nextInt()+1);
        c1.setNomeCidade(jTextField_NomeCidade.getText());
        c1.setCodEstado(generator.nextInt());
        c2.setNomeEstado(jTextField_Estado.getText());
        c1.insert();
        c2.insert();
}

Com esse código ele gera um lixo de memória no campo Código da tabela que é uma chave primaria.

3 Respostas

santoro

Desculpe, mas não entendi direito sua pergunta, se você está mandando o banco de dados gerar o código por que você está tentando gerar este código???

S

Boa noite amigo.

Estou tentando gerar esse código e o banco não esta gerando automáticamente. ja refiz toda a tabela e defini o generator e a trigger, más mesmo assim ele não gera o código automaticamente. Caso eu salve na tabela mais de uma vez, ele só está salvando a primeira vez, depois não salva mais. Ai coloquei esse código para gerar atravez do java, más ele gera um lixo na chave primária CodCidade.

grprado

2 coisas:

1 - Coloque o código que voce postar entre tags Code, ajuda bastante a quem quer te ajudar a ler teu código :wink:

2 - Se você configurar os triggers e os generators certinhos, eles funcionam muito bem, obrigado.

Poste o código do Estado.incluir e do Cidade.incluir, pois o erro provavelmente este ai ou então nos triggers.

Outra coisa, nunca use random para gerar uma identidade.

O que aconteceria ser o seu random desse o mesmo resultado 2 vezes seguidas? :twisted:

Criado 15 de junho de 2006
Ultima resposta 16 de jun. de 2006
Respostas 3
Participantes 3