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