JDBC 3.0?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? Derby??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? JDBC 3.0??????Statement.getGeneratedKeys?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ResultSet?????????????????? ??????getGeneratedKeys??????????????????ResultSet????????????????????????ResultSet.getMetaData???????????????????????????IDENTITY_VAL_LOCAL???????????????????????????ResultSetMetaData???????????????????????????????????????????????????
????????????Connection.prepareStatement??????????????????Statement.execute???????????????Statement.executeUpdate?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
?????????????????????????????????TABLE1????????????????????????????????????
CREATE TABLE TABLE1 (C11 int, C12 int GENERATED ALWAYS AS IDENTITY)
???????????????????????????????????????????????????????????????????????????TABLE1??????????????????C12 ??????????????????ResultSet?????????????????????
????????? 1:
Statement stmt = conn.createStatement();
stmt.execute(
"INSERT INTO TABLE1 (C11) VALUES (1)",
Statement.RETURN_GENERATED_KEYS);
ResultSet rs = stmt.getGeneratedKeys();
????????? 2:
Statement stmt = conn.createStatement();
String [] colNames = new String [] { "C12" };
stmt.execute(
"INSERT INTO TABLE1 (C11) VALUES (1)",
colNames);
ResultSet rs = stmt.getGeneratedKeys();
????????? 3:
Statement stmt = conn.createStatement();
int [] colIndexes = new int [] { 2 };
stmt.execute(
"INSERT INTO TABLE1 (C11) VALUES (1)",
colIndexes);
ResultSet rs = stmt.getGeneratedKeys();
??????????????????????????????????????????????????????????????????????????????????????? Statement.getGeneratedKeys?????????????????????null???ResultSet??????????????????