数据库的连接与关闭

时间:2022-09-22 23:42:46
一、连接数据库:

方法1.

<?php
    
    $mysqli=new mysqli('localhost','mysql_user','mysql_pwd','use_db_name');

?>



方法2.

<?php
    
    $mysqli=new mysqli();
    
    $mysqli=>connect('localhost','mysql_user','mysql_pwd');
    
    $mysqli=>select_db('mysql_db_name');

?>





二、使用mysqli构造方法建立连接时无法设置任何MySQL特有的连接选项。若要设置连接选项,可使用mysqli_init()创建连接

<?php
    
    /*使用mysqli_init()创建一个连接对象*/
    
    $mysqli=mysqli_init();
    
    
    $mysqli->options(MYSQLI_INIT_COMMAND,'SET AUTOCOMMIT=0');        //连接成功即执行'SET AUTOCOMMIT=0'
    
    $mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT,5);                //设置连接超时的时间,以秒为单位
    
        
    $mysqli->real_connect('localhost','mysql_user','mysql_pwd','my_db_name');

?>





三、mysqli_connect_errno()测试连接过程中是否出错,使用mysqli_connect_error()函数负责返回错误信息

<?php
    
    $mysqli=new mysqli('localhost','mysql_user','mysql_pwd','dbname');
    
    
    /*检查连接,如果连接出错输出错误信息并退出程序*/
    
    if(mysqli_connect_errno()){                        
        
        printf('连接失败:%s\n',mysqli_connect_error());

        exit();
    
    }

?>




四、完成数据库访问工作后,应该及时关闭连接释放有关的mysqli对象。
虽然脚本执行结束后,所有打开的数据库连接都将自动关闭,资源被回收。
但是,在执行过程中,有可能页面需要多个数据库连接,各个连接要在适当的时候将其关闭。
mysqli对象中的close()方法负责关闭打开的数据库连接,成功时返回true,否则返回false

<?php
    
    /*连接到mysql数据库并成功返回mysqli对象*/
    
    $mysqli=new mysqli('localhost','mysql_user','mysql_pwd','mysql_db_name');

    
/*检查连接是否出错*/
    
    if(mysqli_connect_errno()){
        
        printf("连接失败:%s<br>",mysqli_connect_error());
        
        exit();
    
    }
    
    
    /*打印当前数据库使用字符集字符串*/
    
    printf("当前数据库的字符集为:%s<br>",$mysqli->character_set_name());
    
    
    /*打印客户端版本*/
    
    printf("当前客户端的版本为:%s<br>",$mysqli->get_client_info());
    
    
    /*打印服务器主机信息*/
    
    printf("主机信息:%s<br>",$mysqli->host_info);
    
    
    /*打印整数形式mysql服务器版本*/
    
    printf("服务器版本:%d<br>",$mysqli->server_version);
    
    
    /*关闭打开的数据库连接*/
    
    $mysqli->close();

?>