4

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

Kumar
  • 5,038
  • 7
  • 39
  • 51

1 Answers1

5

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()

Zar
  • 6,786
  • 8
  • 54
  • 76
John Cartwright
  • 5,109
  • 22
  • 25
  • CI doesn't let you override db class :( – Kumar Nov 16 '11 at 18:41
  • 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. – John Cartwright Nov 16 '11 at 18:45
  • 5
    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! – Kumar Nov 16 '11 at 21:01