PHP新的连接mysql的方法mysqli

来源:互联网 发布:编写软件测试报告 编辑:程序博客网 时间:2024/05/16 15:29

 摘要:介绍了在PHP5以上版本新增加的API扩展——mysqli,用以连接MySQL数据库。

 

 1. 开启PHP的API支持
 (1)首先修改您的php.ini的配置文件。
      查找下面的语句:
      ;extension=php_mysqli.dll
      将其修改为:
      extension=php_mysqli.dll
 (2)重新启动Apache/IIS,即可。
 (3)说明:PHP需要单独的文件来支持这个扩展库,一般在PHP目录下的ext目录里能找到php_mysqli.dll文件(PHP <= 5.0.2 中是 libmysqli.dll),当然,在PHP的配置文件当中要有正确指向ext的信息(extension_dir)。假若您的PHP没有这个文件,您可以去下载PHP5的源码包。另外,这个API扩展,只能在PHP5以上版本使用。其它具体信息,请看下面。
 2. mysqli身份证
 mysqli是“MySQL, Improved”的缩写,该扩展仅适用于PHP 5。它能用于MySQL 4.1.1和更高版本。该扩展完全支持MySQL 5.1中采用的鉴定协议,也支持预处理语句和多语句API。此外,该扩展还提供了先进的、面向对象的编程接口。在http://php.net/mysqli上,可找到关于mysqli扩展的文档。在http://www.zend.com/php5/articles/php5-mysqli.php处,给出了一篇有用的文章。
 欢迎您访问松鼠(squirrelme)的在CSDN的技术博客:http://blog.csdn.net/squirrelme
 3. mysqli预定义类
mysqli
 表达了 PHP 和 MySQL 数据库之间的连接。
 
构造函数
 mysqli - 构造一个新的 mysqli 对象
方法
 autocommit - 打开或关闭自动提交的数据库选项
 change_user - 改变指定的数据库连接的用户
 character_set_name - 返回数据库连接的默认字符集
 close - 关闭一个之前打开的连接
 commit - 提交当前事务
 connect - 打开一个到 MySQL 数据库服务器的新连接
 debug - 执行排错操作
 dump_debug_info - 取得排错信息
 get_client_info - 返回客户端版本
 get_host_info - 返回连接使用的类型
 get_server_info - 返回 MySQL 服务器的版本
 get_server_version - 返回 MySQL 服务器的版本
 init - 初始化 mysqli 对象
 info - 取得最近执行的查询的信息
 kill - 要求服务器停止一个 mysql 线程
 multi_query - 执行多个查询
 more_results - check if more results exist from currently executed multi-query
 next_result - reads next result from currently executed multi-query
 options - set options
 ping - pings a server connection or reconnects if there is no connection
 prepare - prepares a SQL query
 query - performs a query
 real_connect - attempts to open a connection to MySQL database server
 escape_string - escapes special characters in a string for use in a SQL statement, taking into account the current charset of the connection
 rollback - rolls back the current transaction
 select_db - selects the default database
 set_charset - sets the default client character set
 ssl_set - sets ssl parameters
 stat - gets the current system status
 stmt_init- initializes a statement for use with mysqli_stmt_prepare
 store_result - transfers a resultset from last query
 thread_safe - returns whether thread safety is given or not
 use_result - transfers an unbuffered resultset from last query
属性
 affected_rows - gets the number of affected rows in a previous MySQL operation
 client_info - returns the MySQL client version as a string
 client_version - returns the MySQL client version as an integer
 errno - returns the error code for the most recent function call
 error - returns the error string for the most recent function call
 field_count - returns the number of columns for the most recent query
 host_info - returns a string representing the type of connection used
 info - retrieves information about the most recently executed query
 insert_id - returns the auto generated id used in the last query
 protocol_version - returns the version of the MySQL protocol used
 server_info - returns a string that represents the server version number
 server_version - returns the version number of the server as an integer
 sqlstate - returns a string containing the SQLSTATE error code for the last error
 thread_id - returns the thread ID for the current connection
 warning_count - returns the number of warnings generated during execution of the previous SQL statement
 

 4. 基本语法
 <?php 
    
    
/* Connect to a MySQL server  连接数据库服务器 */ 
    
$link = mysqli_connect
                
'localhost',  /* The host to connect to 连接MySQL地址 */ 
                
'user',      /* The user to connect as 连接MySQL用户名 */ 
                
'password',  /* The password to use 连接MySQL密码 */ 
                
'world');    /* The default database to query 连接数据库名称*/ 
    
    
if (!$link) { 
       
printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error()); 
       
exit
    } 
    
    
/* Send a query to the server 向服务器发送查询请求*/ 
    
if ($result = mysqli_query($link, 'SELECT Name, Population FROM City ORDER BY Population DESC LIMIT 5')) { 
    
        
print("Very large cities are: "); 
    
        
/* Fetch the results of the query 返回查询的结果 */ 
        
while$row = mysqli_fetch_assoc($result) ){ 
            
printf("%s (%s) ", $row['Name'], $row['Population']); 
        } 
    
        
/* Destroy the result set and free the memory used for it 结束查询释放内存 */ 
        
mysqli_free_result($result); 
    } 
    
    
/* Close the connection 关闭连接*/ 
    
mysqli_close($link); 
    
?> 

注:此篇文章转载来自http://blog.csdn.net/squirrelme

原创粉丝点击