为了安装一个cms,我有一个表单,在其中我要求用户输入一个数据库名称,他希望脚本将表创建到其中。在那之后,我有了我仅有的三张cms表。
我正在尝试使用file = get_file_contents(dump.sql)读取该dump.sql文件,然后使用mysql_query($file);,但没有发生任何事情,请建议或帮助。
发布于 2011-04-12 18:07:52
mysql_query不能一次运行多个查询。
您可以尝试使用mysqli:multi_query()函数
或
有另一种方法可以使用exec和mysql命令来完成此操作。
您可以使用php的exec函数执行mysql命令将表存储在数据库中。
应该是这样的。
$Command = "mysql -u {$username} -p{$password} {$database} < {$BackupFile}";
exec($Command);发布于 2015-08-09 04:11:42
这将是一个棘手的解决方案,但如果数据中没有包含;字符,则可以从";“字符分解整个sql文件。如果是这样的话,首先就很难摆脱它们。
例如:
$lines = file_get_contents("your_sql_dump");
$lines = explode(";", $dumpSql);
foreach($lines as $line) {
mysql_query($line, $conn);
}https://stackoverflow.com/questions/5633528
复制相似问题