Import SQL dump to MySQL using Codeigniter
Taking backup dump and importing the dump into database can be done very easily using php. In Last posts i explained how to take the backup of Mysql using php http://asvignesh.in/take-mysql-backup-using-php-passthru-function , http://asvignesh.in/take-mysql-backup-using-php
Here is the function to import the sql dump into database
function import_dump($folder_name = null , $file_name) {
$folder_name = 'dumps';
$path = 'assets/backup_db/'; // Codeigniter application /assets
$file_restore = $this->load->file($path . $folder_name . '/' . $file_name, true);
$file_array = explode(';', $file_restore);
foreach ($file_array as $query)
{
$this->db->query("SET FOREIGN_KEY_CHECKS = 0");
$this->db->query($query);
$this->db->query("SET FOREIGN_KEY_CHECKS = 1");
}
}

I have some case where the query in mysql dump is something like this:
INSERT INTO table_name (`field1` , `field2`) values (‘some data’ , ‘some ; data ;’)
inside the data type varchar or text they have some value with semicolon (;)
and when we run this code explode(‘;’, $file_restore);
it got separated into array, how can we prevent this?
But it’s replacing database…
Is there any way to append data?