1, PDO::ERRMODE_SILENT
C'est le mode par défaut. PDO définira des codes d'erreur simples sur les objets d'instruction et de base de données. Vous pouvez utiliser les méthodes PDO->errorCode() et PDO->errorInfo() pour vérifier les erreurs ;
Si l'erreur est causée par un appel à l'instruction ; object , vous pouvez utiliser la méthode PDOStatement->errorCode() ou PDOStatement->errorInfo() sur cet objet pour obtenir les informations d'erreur.
Et si l'erreur survient lors de l'appel de l'objet de base de données, vous devez appeler ces deux méthodes sur l'objet de base de données.
Le code est le suivant :
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/3/5 0005 * Time: 上午 9:23 */ header("Content-Type:text/html;charset=utf-8"); //mysql:host:localhost;port=3306;dbname=php;charset=utf-8 $dbms='mysql'; $host='localhost'; $port='3306'; $dbname='php'; $charset='utf-8'; //用户名与密码 $user='root'; $pwd='root'; $dsn="$dbms:host=$host;port=$port;dbname=$dbname;charset=$charset"; try{ $pdo=new PDO($dsn,$user,$pwd); //设置错误处理 $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_SILENT); //0 默认模式 // $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING); //1 // $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);//2 // $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ATTR_ERRMODE); //3 //预处理sql语句 $stmt=$pdo->prepare("select *from phpbook"); $stmt->execute(); //获取错误信息 $code=$stmt->errorCode(); $info=$stmt->errorInfo(); //输出相关信息 print_r("错误码:".$code."<br>"); print_r("错误信息:"); print_r($info); }catch (PDOException $exception){ echo $exception->getMessage().'<br>'; }
Si la base de données n'est pas créée, le résultat de l'exécution de la table phpbook est le suivant :
section suivante