Intanto ho pensato a quest'altra soluzione,parecchio macchinosa per database più grandi,quindi credo proprio che non sia quella esatta,ma il mio unico scopo per ora è farla funzionare...peccato che ancora non funzioni però...
codice:
String Titolo=req.getParameter("titolo");
String Autore=req.getParameter("autore");
String Editore=req.getParameter("editore");
String Tema=req.getParameter("tema");
String Anno=req.getParameter("anno");
INSERT1="INSERT INTO editori (nome) VALUE(\'" +Editore+ "\')";
st = con.prepareStatement(INSERT1);
st.executeUpdate(INSERT1);
INSERT2="INSERT INTO autori (nome) VALUE(\'" +Autore+ "\')";
st = con.prepareStatement(INSERT2);
st.executeUpdate(INSERT2);
INSERT3="INSERT INTO temi (tema) VALUE(\'" +Tema+ "\')";
st = con.prepareStatement(INSERT3);
st.executeUpdate(INSERT3);
SQL1="SELECT idEditore FROM editori WHERE nome=\'" +Editore+ "\'";
st = con.prepareStatement(SQL1);
rs1=st.executeQuery(SQL1);
SQL2="SELECT idAutor FROM autori WHERE nome=\'" +Autore+ "\'";
rs2=st.executeQuery(SQL2);
SQL3="SELECT idTema FROM temi WHERE tema=\'" +Tema+ "\'";
rs3=st.executeQuery(SQL3);
INSERT4=" INSERT INTO libri(titolo,anno,situazione,idEditore,idTema) VALUES (\'" +Titolo+ "\'," +Anno+ ",\'disponibile\',\'" +rs1.getString("idEditore")+"\',\'" +rs3.getString("idTema")+"\') " ;
st = con.prepareStatement(INSERT4);
st.executeUpdate(INSERT4);
out.println("</HTML></BODY>");
A quanto pare il problema è che i comandi rs1.getString() e rs3.getString() sembrano non dare nessun risultato