首页 >数据库 >mysql教程 >如何使用 MySQL 命令行工具从 PHP 执行 SQL 脚本?

如何使用 MySQL 命令行工具从 PHP 执行 SQL 脚本?

DDD
DDD原创
2024-12-19 05:48:38674浏览

How Can I Execute SQL Scripts from PHP Using the MySQL Command-Line Tool?

在 PHP 中嵌入 SQL 脚本:详细指南

简介

直接执行 SQL 脚本由于直接执行时遇到的限制和边缘情况,来自 PHP 的方法提出了挑战。因此,使用外部工具,例如 MySQL 的 CLI 工具,就变得有必要了。

使用 shell_exec() 执行 *.sql 文件

运行 *.sql 文件PHP,建议使用 shell_exec() 的以下方法:

$command = 'mysql'
    . ' --host=' . $vals['db_host']
    . ' --user=' . $vals['db_user']
    . ' --password=' . $vals['db_pass']
    . ' --database=' . $vals['db_name']
    . ' --execute="SOURCE ' . $script_path
;
$output1 = shell_exec($command . '/site_db.sql"');
$output2 = shell_exec($command . '/site_structure.sql"');

其他注意事项

值得注意的是,--option=value 格式对于指定 MySQL CLI 选项更加稳健。此外,--execute="SOURCE ..." 可以用来指定文件执行。

shell_exec() 和 exec() 之间的区别

虽然 shell_exec () 和 exec() 允许执行外部命令,shell_exec() 确保执行整个脚本并捕获其输出。另一方面,Exec() 只返回最后一行输出。

相关问题和资源

  • 有关替代方法,请参阅 Ignacio Vazquez -艾布拉姆斯的回应。
  • 请参阅这些相关的 Stack Overflow 问题以了解更多信息见解:

    • 从 PHP 中加载 .sql 文件
    • 使用存储过程执行 SQL 脚本
    • 单个 mysql_query 语句中的多个 SQL 查询

以上是如何使用 MySQL 命令行工具从 PHP 执行 SQL 脚本?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn