Como inserir os dados em uma tabela se um dos atributos usa um auto-incremente?

4 respostas
C

Olá!!! Pessoal é o seguinte…
Eu tenho uma tabela com dois campos (id_Funcao (PK), Funcao). O id_funcao estou usando o auto-incremente no Firebird e o usuário tem que inserir o nome da funcao em um JtextField, como faço isso?
estava tentando isto mas não deu certo:

try {

String sql = insert into FUNCAO(ID_FUNCAO, DESCR_FUNCAO ) values(?, ?);

Connection conn = new Conexao().getConexao();

PreparedStatement pr = conn.prepareStatement(sql);//prepara

pr.setInt(1, bean.getCodFuncao());

pr.setString(2, bean.getDescrFuncao());

pr.execute();

JOptionPane.showMessageDialog(null, Usuário cadastrado com sucesso!);			

} catch (Exception e) {}

4 Respostas

chicocx

coloca a pilha de exeçoes para que eu possa te ajudar

ze_kiefa

Não manjo de Firebird, mas uso o MySQL que deve ser semelhante.
No MySQL não é necessário indicar o campo AUTO_INCREMENT no comando de inserção. Ex.:
INSERT INTO FUNCAO ( DESCR_FUNCAO ) values( ? );

Experimente.

I

No mysql eu passo o “0”(zero) como valor… o banco faz o resto

C

Obrigado!!! Salvou a Pátria!!!
Estou enrolado agora, para pegar um campo de uma tabela e preencher um JComboBox. Já vi alguns assuntos no Fórum porém ainda não consegui!!!

Criado 6 de maio de 2006
Ultima resposta 6 de mai. de 2006
Respostas 4
Participantes 4