Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, dimpon, Вы писали:
D>>не сочтите за труд попробуйте — такой код будет возвращать identity ? (первый Statement не закрывается)
D>>D>>Statement st = conn.createStatement();
D>>st.executeUpdate("insert into tab(name) values ('ABCDEF')");
D>>//st.close();
D>>Statement sta = conn.createStatement();
D>>ResultSet rs = sta.executeQuery("select @@identity");
D>>while (rs.next()){
D>> System.out.println("identity= "+rs.getInt(1));
D>>}
D>>
B>Может реально изменения в базе ещё не закоммитились? И поэтому такой @@identity? Судя по описанному поведению очень на то похоже.
Нет, такой код тоже не работает, дело не в коммите
Statement st = conn.createStatement();
st.executeUpdate("insert into tab(name) values ('ABCDEF')");
conn.commit();
//st.close();
Statement sta = conn.createStatement();
ResultSet rs = sta.executeQuery("select @@identity");