sql >> Databasteknik >  >> RDS >> Mysql

MySQL batch stmt med Statement.RETURN_GENERATED_KEYS

Jag är inte säker på att det här är ett sätt du kan göra detta med addBatch förutom på det sätt som du använder. En annan sak att försöka är att överge addBatch() metod och försök att stänga av auto-commit istället. Sedan kan du använda stmt.getGeneratedKeys(); . Något i stil med:

connection.setAutoCommit(false);
stmt.executeUpdate("insert into table1(\"id_auto_generated\", \"foo\") ...");
DatabaseResults results = stmt.getGeneratedKeys();
// extract the id from the results
stmt.executeUpdate("insert into table2(\"table1_id\", \"boo\") ...");
... many more stmts here
connection.commit();
connection.setAutoCommit(true);

Hoppas detta hjälper.




  1. Hur man filtrerar rullgardinsvärden efter en annan rullgardinslista i ASP.NET, c#

  2. Hur INTE RLIKE fungerar i MySQL

  3. AbstractMethodError på resultset.getObject

  4. Ogiltigt standardvärde för "Datum"