Boa noite. Gente estou desenvolvendo um aplicativo e em determinado momento preciso fazer duas inserçoes, em duas tabelas diferentes. Gostria de saber porque não estou conseguindo realizar a operação.
segue abaixo o código:
out.println("<html><head><SCRIPT language='JavaScript'>");
try{
stm.executeUpdate("insert into funcionario(cpf, rg, nome, dt_nascimento, dt_admissao, email) values('" + request.getParameter("txtCpf") + "','" + request.getParameter("txtRg") + "','" + request.getParameter("txtNome") + "','" + request.getParameter("txtDtNasc") + "','" + request.getParameter("txtDtAdmissao") + "','" + request.getParameter("txtEmail") + "');");
out.println("alert('O Funcionário "+ request.getParameter("txtNome")+" foi incluído no banco');");
}
catch(Exception e ){
out.println("alert('Funcionário "+ request.getParameter("txtNome")+" não incluído');");
}
finally{
try{
ResultSet rs = stm.executeQuery("select max(idFunc) as cod_func from funcionario");
stm.executeUpdate("insert into endereco(funcionario_idFunc, rua, numero, bairro, cidade, estado, cep, complemento) values('" + rs.getString("cod_func") + "', '" + request.getParameter("txtEnd") + "','" + request.getParameter("txtEndNum") + "','" + request.getParameter("txtEndBairro") + "','" + request.getParameter("txtEndCidade") + "','" + request.getParameter("txtEndEstado") + "','" + request.getParameter("txtCep") + "','" + request.getParameter("txtEndComp") + "');");
}
catch(Exception e ){
out.println("alert('Não foi possível buscar o idFunc!');");
}
finally{
out.println("</SCRIPT></head><body><a href='funcForm.jsp'>Voltar</a><nbody></html>");
}
Um detalhe é que estou tentando fazer o segundo "INSERT" com a chave primária da tabela funcionário, com a tabela endereço. Elas estão relacionadas e juntas formam um chave composta com as chavesprimárias das tabelas. Existe outro jeito mais fácil de fazer isso? Está certo o jeito que estou fazendo?
Desde já agradeço. Obrigado