我有一部分代码导入.sql文件以这种方式执行:
<?php
$Server = "localhost";
$Db = "test";
$User = "root";
$Pass = "";
function exec_file($File_Path) {
global $Server,$Db,$User,$Pass;
$Con = new PDO("mysql:host=$Server;dbname=$Db",$User,$Pass);
$Con->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
try {
$Sql = file_get_contents($File_Path);
$Res = $Con->exec($Sql);
}
catch (PDOException $Ex) {
echo $Ex->getMessage();
}
}
.sql文件包含多个SQL命令。所有这些命令执行得很好,但是,当这些命令出错时,'catch'块只能捕获.sql文件中第一个命令的错误。
应该有一些方法可以在第二个命令中捕获错误吗?