Home >Database >Mysql Tutorial >How to Import a .sql File into MySQL Using PHP?

How to Import a .sql File into MySQL Using PHP?

Susan Sarandon
Susan SarandonOriginal
2024-12-18 01:21:17308browse

How to Import a .sql File into MySQL Using PHP?

How to Import a .sql File into MySQL Database Using PHP (Alternative Method)

Importing a .sql file into a MySQL database using PHP can be a useful task when performing database migrations or restoring data.

To resolve the issue in your code, where the import is failing even though the .sql file is in the same directory, it's recommended to use the following alternative method:

// Name of the file
$filename = 'churc.sql';
// MySQL host
$mysql_host = 'localhost';
// MySQL username
$mysql_username = 'root';
// MySQL password
$mysql_password = '';
// Database name
$mysql_database = 'dump';

// Connect to MySQL server
mysql_connect($mysql_host, $mysql_username, $mysql_password) or die('Error connecting to MySQL server: ' . mysql_error());
// Select database
mysql_select_db($mysql_database) or die('Error selecting MySQL database: ' . mysql_error());

// Temporary variable, used to store current query
$templine = '';
// Read in entire file
$lines = file($filename);
// Loop through each line
foreach ($lines as $line) {
    // Skip it if it's a comment
    if (substr($line, 0, 2) == '--' || $line == '') {
        continue;
    }

    // Add this line to the current segment
    $templine .= $line;
    // If it has a semicolon at the end, it's the end of the query
    if (substr(trim($line), -1, 1) == ';') {
        // Perform the query
        mysql_query($templine) or print('Error performing query \'<strong>' . $templine . '\': ' . mysql_error() . '<br /><br />');
        // Reset temp variable to empty
        $templine = '';
    }
}

 echo "Tables imported successfully";

Important Notes:

  • This method uses the deprecated mysql_* functions, which should be replaced with mysqli_* or PDO for security and efficiency in modern PHP environments.
  • The import process is delegated to the MySQL client, which is the preferred approach when possible.
  • Make sure to fill in the correct values for $filename, $mysql_host, $mysql_username, $mysql_password, and $mysql_database as per your database settings.
  • Review the error messages and make sure the import file is structured correctly with valid SQL statements.

The above is the detailed content of How to Import a .sql File into MySQL Using PHP?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn