I have a bunch of queries that are generated by a shell script on one server and are to be consumed by a CI app on another server. The queries run fine when run individually but fail when run as a batch. Is there any way out? Please note that these are not multiple inserts or updates and queries may span more than one line
1 Answer
This is not a limitation of CodeIgniter but rather of the database client libraries.
I.e., mysql_query() can only execute a single query at a time.
Depending on the client, there are alternatives,
I.e., mysqli_multi_query()
3 Comments
Kumar
CI doesn't let you override db class :(
John Cartwright
Which db client is it using? Mysql? Mysqli? If it truly not flexible enough and you are stuck with a client that does not support multiple queries, then you are simply left with having to execute each query individually.
Kumar
Thanks a ton John! This is how I fixed it
mysqli_multi_query($this->db->conn_id, $sql); where $sql has batch SQL commands. Apart from this unseen issue I just had to build MDBTools from source. Thanks!