PHP 操做MySQL时mysql_connect( )和Mysqli( )的两种报错机制

    刚开始使用PHP链接MySQL数据库的时候,若是数据库链接不成功或者,对MySQL数据库进行增删改查等操做的时候,SQL语句存在错误,而在执行PHP文件的时候,浏览器并不会抛出错误的缘由,通常是空白显示。此时打开数据库查看,数据库并没有变化,可知这些PHP语句根本没有执行任何操做。php

    Mysql_connect("主机地址","用户名","密码","数据库"),采用该方法链接数据库的时候基本操做见下mysql

    

$connection =  mysql_connect('localhost', 'root', 'txl');
if($connection)
{
	echo "connection Success !"."<br/>";
}
else
die(mysql_error()); //使用MySQL_error()报错
$con=mysql_select_db('test',$connection);
$sql="SELECT id FROM test LIMIT 100";

//$link = mysql_connect("localhost", "mysql_user", "mysql_password");
//mysql_select_db("database", $link);

$result = mysql_query("SELECT id FROM test ", $connection);
$num_rows = mysql_num_rows($result);

// echo "$num_rows Rows\n";
if ($result) {

    printf("Select returned %d rows.\n", $num_rows );

    /* free result set */

 //  $result->close();
}else
    die(mysql_error());
   new Mysqli()方法是PHP链接MySQL的拓展,采用了面向对象的思想,它再也不支持mysql_error()这一种方法,提示MySQL操做错误

   

$connection = new mysqli('localhost', 'root', 'txl', 'test');
    try{
        $result = $connection->query('select * from st');

        if(!$result){
            echo $connection->error.":".$connection->erron;
            throw new Exception( $connection->erron.":".$connection->error);

        }
    }catch( Exception $e){
      echo $e->getMessage();
  }
采用新的try - catch(Exception $e) 新的机制捕获错误,并echo相应的错误信息。
相关文章
相关标签/搜索