你能从PHP脚本(bar.php)中执行MySQL脚本(foo.sql)吗?如果是这样,怎么样?
并且,这是推荐或不推荐的做法,为什么或为什么不?
提前致谢。
答案 0 :(得分:2)
如何?
bar.php:
<?php `mysql < foo.sql`;
请参阅Execution OperatorsDocs和Using mysql in Batch ModeDocs。
这是一个推荐的练习,为什么[...]?
始终建议为工作选择合适的工具。 mysql命令行界面非常强大,快速且经过良好测试。它可以满足您的需求。
相关: Loading .sql files from within PHP和Best practice: Import mySQL file in PHP; split queries。
答案 1 :(得分:2)
mysqli::multi_query是另一种选择。
答案 2 :(得分:0)
$contents = get_file_contents( 'foo.sql' );
$queries = explode( ';', $contents );
foreach( $queries as $query ) {
mysql_query( $query );
}
我认为这样做没什么问题。