diff --git a/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java b/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java index 8b2c6340a..ff8cd13c9 100644 --- a/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java +++ b/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java @@ -135,7 +135,7 @@ public final class DefaultPersister implements Persister { public int[] executeBatch(SpiSqlUpdate sqlUpdate, SpiTransaction transaction) { BatchControl batchControl = transaction.getBatchControl(); try { - return batchControl.execute(sqlUpdate.getSql(), sqlUpdate.isGetGeneratedKeys()); + return batchControl.execute(sqlUpdate.getGeneratedSql(), sqlUpdate.isGetGeneratedKeys()); } catch (SQLException e) { throw transaction.translate(e.getMessage(), e); } diff --git a/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java b/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java index 4ff697eae..c5d093962 100644 --- a/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java +++ b/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java @@ -75,7 +75,38 @@ public class TestInsertSqlLogging extends BaseTestCase { txn.commit(); } + } + @Test + public void addBatch_namedParams() { + + Ebean.find(AuditLog.class).where().ge("id", 10000).delete(); + + String sql = "insert into audit_log (id, description, modified_description) values (:id, :desc, :modDesc)"; + SqlUpdate insert = Ebean.createSqlUpdate(sql); + + try (Transaction txn = Ebean.beginTransaction()) { + + insert.setParameter("id", 20000); + insert.setParameter("desc", "hello"); + insert.setParameter("modDesc", "rob"); + insert.addBatch(); + + insert.setParameter("id", 20001); + insert.setParameter("desc", "goodbye"); + insert.setParameter("modDesc", "rob"); + insert.addBatch(); + + insert.setParameter("id", 20002); + insert.setParameter("desc", "chow"); + insert.setParameter("modDesc", "bob"); + insert.addBatch(); + + int[] rows = insert.executeBatch(); + System.out.println("Rows was " + Arrays.toString(rows)); + + txn.commit(); + } } @Test