如何在php中使用mysql_query加载sql dump

时间:2011-04-12 10:06:31

标签: php mysql

要安装cms我有一个表单,我要求用户输入他希望脚本将表格放入的数据库名称。在那之后,我有我唯一的三个cms表。

我正在尝试使用dump.sql然后file = get_file_contents(dump.sql)阅读mysql_query($file);个文件 但没有任何事情发生,请建议或帮助。

2 个答案:

答案 0 :(得分:4)

mysql_query无法一次运行多个查询。

您可以尝试mysqli:multi_query()功能

OR

使用exec和mysql命令可以采用另一种方法。

您可以使用php的exec函数执行mysql命令将表存储在数据库中。

这将是这样的

$Command = "mysql -u {$username} -p{$password} {$database} < {$BackupFile}";
exec($Command);

答案 1 :(得分:0)

这将是一个棘手的解决方案但你可以从“;”爆炸整个sql文件如果你没有包含数据的字符;其中的人物。如果是这样的话,首先很难逃脱它们。

例如:

$lines = file_get_contents("your_sql_dump");
$lines = explode(";", $dumpSql);
foreach($lines as $line) {
    mysql_query($line, $conn);
}