您的位置:首页 > 编程语言 > PHP开发

PDO错误处理的三种模式

2017-08-24 21:13 330 查看
<?php
    /*设置PDO错误处理模式:

        1.默认模式:PDO::ERRMODE_SILENT

        2.警告模式:PDO::ERRMODE_WARNING

        3.抛出异常模式:PDO::ERRMODE_EXCEPTION

    */

    try{

        $pdo=new PDO("mysql:host=localhost;dbname=bookstore","root","158369");

    }

    catch(PDOexception $e){

        echo "数据库连接失败!".$e->getmessage()."<br>";

    }

        echo "数据库连接成功!<br>";
    //1.设置PDO错误处理模式为errmode_ewarning

    //$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
    //2.设置PDO错误处理模式为errmode_exception

    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

    

    echo $pdo->getAttribute(PDO::ATTR_ERRMODE);

    echo "<br>";

    

    /*0.默认处理方式

    //book表不存在,故存在错误

    $result=$pdo->exec("delete from book where id=3");    

    if(!$result){

        echo $pdo->errorCode();

        echo "<br>";

        print_r($pdo->errorinfo());

    }else{

        echo "数据表删除成功!"."<br>";

    }

    */

    

    /*1.使用警告模式获取错误信息

    $result=$pdo->exec("delete from book where id=3");

    if(!$result){

        echo $pdo->errorCode();

        echo "<br>";

    }else{

        echo "数据表删除成功!"."<br>";

    }    

    */

    
    //2.PDO处理错误异常,最常用的为抛出异常处理方式:errmode_exception

    try{

    $result=$pdo->exec("delete from book where id=3");        

    }

    catch(PDOexception $e){

        echo "SQL语句执行失败,错误原因为:".$e->getmessage()."<br>";

    }    

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息