JDBC PreparedStatement a navrat primary key
Dusan Zatkovsky
msk.conf na gmail.com
Úterý Květen 26 10:35:04 CEST 2009
Ahoj.
Potrebujem do primitivnej tabulky, ktora ma id INTEGER PRIMARY KEY, vlozit
tisicky zaznamov a ziskat s5 priradene id. Snazim sa na to pouzit
PreparedStatement ( "insert into foo ( ... ) returning id as integer" ) a
jeho batch funkcionalitu.
for ( ... ) {
st.setString(..);
st.addBatch();
}
Neviem vsak tie vygenerovane id ziskat, pretoze:
A. st.executeBatch(); // toto hodi SQL ex, ze nebol ocakavany result
ResultSet rs = st.getGeneratedKeys();
B. ResultSet rs = st.executeQuery() // toto vrati len 1 zaznam
Je vobec tato funkcionalita mozna pomocou batch, alebo musim v tom prvom cykle
vzdy volat executeQuery() v kazdom cykle? Rad by som sa totiz vyhol zbytocnym
RTT medzi klientom a databazou.
Dik.
--
Dusan
Další informace o konferenci Konference