EXECUTE { SQLString | PreparedStatementIdentifier } [ USING { String | Identifier } ]
When auto-commit mode is on, the Using's result set is closed upon the first execution of the Execute statement. To ensure multiple-row execution of the Execute command, use the Autocommit command to turn auto-commit off.
ij> autocommit off; ij> prepare menuInsert as 'INSERT INTO menu VALUES (?, ?, ?)'; ij> execute menuInsert using 'VALUES (''entree'', ''lamb chop'', 14), (''dessert'', ''creme brulee'', 6)'; 1 row inserted/updated/deleted 1 row inserted/updated/deleted ij> commit;
ij> connect 'jdbc:derby:firstdb;create=true'; ij> create table firsttable (id int primary key, name varchar(12)); 0 rows inserted/updated/deleted ij> insert into firsttable values (10,'TEN'),(20,'TWENTY'),(30,'THIRTY'); 3 rows inserted/updated/deleted ij> select * from firsttable; ID |NAME ------------------------ 10 |TEN 20 |TWENTY 30 |THIRTY 3 rows selected ij> connect 'jdbc:derby:seconddb;create=true'; ij(CONNECTION1)> create table newtable (newid int primary key, newname varchar(12)); 0 rows inserted/updated/deleted ij(CONNECTION1)> prepare src@connection0 as 'select * from firsttable'; ij(CONNECTION1)> autocommit off; ij(CONNECTION1)> execute 'insert into newtable(newid, newname) values(?,?)' using src@connection0; 1 row inserted/updated/deleted 1 row inserted/updated/deleted 1 row inserted/updated/deleted ij(CONNECTION1)> commit; ij(CONNECTION1)> select * from newtable; NEWID |NEWNAME ------------------------ 10 |TEN 20 |TWENTY 30 |THIRTY 3 rows selected ij(CONNECTION1)> show connections; CONNECTION0 - jdbc:derby:firstdb CONNECTION1* - jdbc:derby:seconddb ij(CONNECTION1)> disconnect connection0; ij>