0

いくつかの環境情報:

  1. mysql-connector-java-5.1.22-bin.jar;
  2. mysql Standard Edition 5.5;
  3. jdk 1.6;
  4. Netbeans IDE;
  5. Windows XP;

私のJavaコードは次のとおりです。

MySQLConnection conn = (MySQLConnection)DriverManager.getConnection("jdbc:mysql://localhost:3306/db", "root", "");
String sql = "INSERT INTO `table_name` (`col1`,`col2`,...`colN`) VALUES (value1,value2,...,valueN)";
Statement stmt = conn.createStatement();
int rows = stmt.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);

ResultSet rs = stmt.getGeneratedKeys();
if (rs != null && rs.next()) {
    int id = rs.getInt(1);
}

このテーブルには、auto_increment属性を持つ「id」という名前の主キー列が1つあります。実行後、テーブルにレコードが挿入されます。ただし、rs.next()はfalseを返し、自動生成された主キー値を取得できません。

手がかりはありますか?

4

0 に答える 0