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??????????????????