在PHP中执行SQL文件查询,可以使用mysqli_multi_query()
函数。
以下是一个示例代码:
<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "database";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 读取SQL文件内容
$sqlFile = file_get_contents('path/to/sql/file.sql');
// 执行SQL文件查询
if ($conn->multi_query($sqlFile)) {
do {
// 获取结果集
if ($result = $conn->store_result()) {
while ($row = $result->fetch_assoc()) {
// 处理查询结果
echo $row['column_name'] . "<br>";
}
$result->free();
}
// 移到下一个结果集
} while ($conn->more_results() && $conn->next_result());
} else {
echo "查询失败: " . $conn->error;
}
// 关闭连接
$conn->close();
?>
请注意,file_get_contents()
函数用于读取SQL文件内容,multi_query()
函数用于执行SQL查询,store_result()
函数用于获取结果集,more_results()
函数用于检查是否还有更多结果集,next_result()
函数用于移动到下一个结果集。
将上述代码中的$servername
、$username
、$password
和$dbname
替换为实际的数据库连接信息,并将'path/to/sql/file.sql'
替换为实际的SQL文件路径。
请注意,执行SQL文件查询可能会对数据库造成影响,请确保在执行之前进行适当的验证和授权。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站