PHP函数
MySQL函数
### 一、连接和关闭 **1、mysql_connect('example.com:3307', 'root', '123456')** --打开一个到 MySQL 服务器的非永久连接 **2、mysql_pconnect(server,user,pwd,clientflag)** --打开一个到 MySQL 服务器的持久连接。 **3、mysql_free_result(data)** --将释放所有与结果标识符 result 所关联的内存。仅需要在考虑到返回很大的结果集时会占用多少内存时调用。在脚本结束后所有关联的内存都会被自动释放。 **4、mysql_close(link_identifier)** --关闭 MySQL 连接,通常不需要,因为已打开的非持久连接会在脚本执行完毕后自动关闭。如果没有指定 link_identifier,则关闭上一个打开的连接。 ### 二、设置数据库 **1、mysql_select_db(database,connection) **--设置活动的 MySQL 数据库。 **2、mysql_query("set names 'utf8'") ** --设置数据库编码 **3、mysql_client_encoding([resource link_identifier])** --从 MySQL 中取得 character_set 变量的值。 ### 三、执行sql语句 **1、mysql_query(query,connection)** --执行一条 MySQL 查询。 **2、mysql_unbuffered_query(query,connection)** --向 MySQL 发送一条 SQL 查询(不获取 / 缓存结果)。 **3、mysql_real_escape_string(string,connection) ** --转义 SQL 语句中使用的字符串中的特殊字符。可使用本函数来预防数据库攻击。将 string 中的特殊字符转义,并考虑到连接的当前字符集,因此可以安全用于 mysql_query()。 ```php // 转义用户名和密码,以便在 SQL 中使用 $user = mysql_real_escape_string($user); $pwd = mysql_real_escape_string($pwd); $sql = "SELECT * FROM users WHERE user='" . $user . "' AND password='" . $pwd . "'" ``` ### 四、从结果集取得信息【fetch】 **1、mysql_fetch_row(data) **--取【一行】作为枚举数组,用循环来做每一次会移动到下查询结果中的下一行【索引从0开始】 **2、mysql_fetch_array(data,array_type)** -取【一行】作为关联数组,返回的字段名区分大小写。【既保留字段名】 **3、mysql_fetch_assoc(data) ** : 取【一行】作为关联数组,返回的字段名区分大小写【保留字段名】 **4、mysql_fetch_lengths(data)**-- 取得【一行】中【每个】字段的内容的长度。 **5、mysql_fetch_object(data)**-- 从结果集中取得一行作为对象,本函数返回的字段名是区分大小写的。 **6、mysql_num_fields(data) **-- 返回结果集中【字段】的数。 **7、mysql_num_rows(data)**-- 返回结果集中【行】的数目。 **8、mysql_result(data,row,field)** -- 返回结果集中一个字段的值。 **9、mysql_fetch_field(data,field_offset) ** -- 从结果集中取得列属性并作为对象返回【可多个】 ### 五、获取指定字段的信息【field】 **1、mysql_field_len(data,field_offset) **--取得字段的长度 ```php $result = mysql_query("SELECT * from Person"); $length = mysql_field_len($result, 0);//20 ``` **2、mysql_field_name(data,field_offset)** --取得字段索引的字段名,返回的字段名区分大小写。 ```php $result = mysql_query("SELECT * from Person"); $length = mysql_field_name($result, 0); //20 ``` **3、mysql_field_table(data,field_offset)** --取得字段所在的表名 ```php $result = mysql_query("SELECT * from Person"); $length = mysql_field_table($result, 0);//Person ``` **4、mysql_field_type(data,field_offset)** --取得字段的类型 ```php $result = mysql_query("SELECT * from Person"); $length = 3、mysql_field_table($result, 0);//string ``` **5、mysql_field_flags(data,field_offset) **--取得字段的字段标志。每个标志都用空格+单词分开 ```php 例子: $result = mysql_query("SELECT * from Person"); $length = mysql_field_flags($result, 0); //not_null primary_key auto_increment ``` **6、mysql_field_seek(data,field_offset)** --将结果集中的指针设定为制定的字段偏移量 ```php $result = mysql_query("SELECT * from Person"); $length = mysql_field_seek($result, 3); //// 跳到第四个字段 ``` ### 六、其他: **1、mysql_insert_id(connection)-**- 返回上一步 INSERT 操作产生的自增的ID,如果没有则返回0 **2、mysql_list_dbs(connection)**-- 列出 MySQL 服务器中所有的数据库。 **3、mysql_list_processes(connection)** -- 列出 MySQL 进程。 **4、mysql_thread_id(connection)** -- 返回当前线程的 ID。 **5、mysql_ping(connection) ** -- Ping 一个服务器连接,如果没有连接则重新连接。 **6、mysql_info(connection)**-- 返回最近一条查询的信息。 7、mysql_db_name(list,row,field)-- 将调用 mysql_list_dbs() 返回的结果指针作为第一个参数。 **8、mysql_data_seek(data,row)**-- 移动内部结果的指针,调用 mysql_fetch_row() 将返回那一行。 **9、mysql_affected_rows()**-- 取得前一次 MySQL 操作所影响的记录行数 执行成功则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 -1。 PDATE 查询:MySQL 不会将原值和新值一样的列更新。只有真正被修改的记录数才会被返回。 REPLACE 语句:本函数返回的是被删除的记录数加上被插入的记录数。 ### 七、获取mysql系统信息 **1、mysql_get_client_info()** 取得 MySQL 客户端信息。 **2、mysql_get_host_info() ** 取得 MySQL 主机信息。 **3、mysql_get_proto_info()** 取得 MySQL 协议信息。 **4、mysql_get_server_info()** 取得 MySQL 服务器信息。 **5、mysql_stat(connection)** 取得 MySQL 服务器的当前系统状态。 ### 八、错误提示 **1、mysql_errno()** -- 返回上一个 MySQL 函数的错误号码,如果没有出错则返回 0(零)。 **2、mysql_error()** -- 回上一个 MySQL 函数的错误文本,如果没有出错则返回 ''(空字符串)。 ### 附录:一个例子 ```php //链接数据库 $con = mysql_connect("localhost", "hello", "321"); if (!$con){ die('Could not connect: ' . mysql_error()); } //选择数据库 $db_selected = mysql_select_db("test_db",$con); //设置数据库编码 mysql_query("set names 'utf8'"); //sql语句 $sql = "SELECT * from Person"; //执行sql语句 $result = mysql_query($sql,$con); // 获取一行查询结果 $row=mysql_fetch_row($result); /// 显示字段名称 for ($i=0; $i<mysql_num_fields($result); $i++){ mysql_field_name($result,$i); } // 定位到第一条记录 mysql_data_seek($result, 0); // 循环取出记录 while ($row=mysql_fetch_row($result)){ for ($i=0; $i<mysql_num_fields($result); $i++ ){ echo $row[$i]; } } //把查询结果放到一个数组中 while ($row=mysql_fetch_row($result)){ $arr[]=$row; } // 释放资源 mysql_free_result($result); // 关闭连接 mysql_close($conn); ```
顶部
收展
底部
[TOC]
目录
PHP函数 字符串函数
PHP函数 数组函数
PHP函数 文件目录函数
日期时间函数
MySQL函数
正则函数
数学函数
cURL 函数
XML函数
加密函数
Session函数
URL函数
Apache 函数
Bzip2 压缩与归档扩展
GNU Readline 针对命令行的扩展
网络函数
进程控制
变量与类型相关扩展函数
影响 PHP 行为的扩展
相关推荐
PHP基础
PHP设计模式
PHP算法
PHP版本