Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 2.5.0b5

Request #14500 Support MySQL extended insert with ExecuteMultiple
Submitted: 2008-08-13 22:01 UTC
From: nicotine Assigned:
Status: Open Package: MDB2 (version 2.5.0b1)
PHP Version: Irrelevant OS:
Roadmaps: (Not assigned)    
Subscription  


 [2008-08-13 22:01 UTC] nicotine (Brandon Ewing)
Description: ------------ If ExecuteMultiple could construct an extended insert on drivers that support it, it would increase performance when doing bulk inserts. Test script: --------------- <? $data = array(array(1,2,3),array(4,5,6),array(7,8,9)); $db->loadModule("Extended", null, false); $sth = $db->prepare("INSERT INTO table (a,b,c) VALUES (?, ?, ?)"); $db->extended->executeMultiple($sth, $data); Expected result: ---------------- 1 SQL insert statement: INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6),(7,8,9); Actual result: -------------- 3 SQL insert statements INSERT INTO table (a,b,c) VALUES (1,2,3); INSERT INTO table (a,b,c) VALUES (4,5,6); INSERT INTO table (a,b,c) VALUES (7,8,9)

Comments

 [2008-08-31 17:01 UTC] quipo (Lorenzo Alberton)
executeMultiple() executes a prepared query, given a prepared statement, so it can't do what you're looking for. A new method might be created for this, though.