美文网首页
PHP操作Mysql常用函数

PHP操作Mysql常用函数

作者: PHPer_ | 来源:发表于2017-06-22 16:29 被阅读461次

一、操作步骤:

  1. 连接MySQL数据库
$link = mysql_connect($db_config['host'], $db_config['user'], $db_config['pwd'])
//$db_config['host']=主机IP
//$db_config['user']=数据库用户名
//$db_config['pwd']=数据库密码
  1. 判断是否连接成功
if (!$link) {
            die('Could not connect: ' . mysql_error());
        }
//连接成功返回一个连接标识符,否则返回false
  1. 选择数据库
mysql_select_db($db_config['dbname'], $link) or die('Can\'t use foo : ' . mysql_error());
//$db_config['dbname']=数据库名
//选择一个数据库,等同于"use 库名"语句
//返回值为布尔类型
  1. 设置字符集
mysql_set_charset("utf8"); 等同于mysql_query("set names utf8");  
  1. 准备SQL语句
$sql = "SELECT * FROM tb"; 
  1. 向MySQL服务发送SQL语句
mysql_query($sql,$link); -- 发送一条sql语句  
//sql语句若是查询,则返回结果集,其他则返回bool值表示执行是否成功。  
  1. 解析处理结果集

mysql_fetch_array():以关联和索引两种方式数组解析结果集
mysql_fetch_row():以索引式数组解析结果集
mysql_fetch_assoc():以关联式数组解析结果集
mysql_fetch_object():以对象方式解析结果集

  1. 释放结果集,关闭数据库连接

mysql_free_result():释放结果集
mysql_close():关闭数据库连接

  1. 其它操作函数

mysql_affected_rows():取得前一次 MySQL 操作所影响的记录行数,关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数
mysql_insert_id():取得上一步 INSERT 操作产生的 ID

Mysql数据库优化要点

1.给查询比较频繁的字段添加索引,比如新闻的标题,就要创建Normal索引,
2.如果没有特需要,数据表类型就用MyISAM,如果需要支持事务,行级锁之类的特殊功能就要用I�nnoDB,因为MyISAM的查询效率比InnoDB高。
3.WHERE查询条件里面,如果筛选出来的结果集数量比较少的条件要往前写,条件多的要往后写。有利于查询优化。
4.字段请求,少用通配符*,一般用什么字段就取什么字段,即SELECT后面的字段名,用得着什么就写什么,用不着的就不写。可以减少请求的数据量,数据量回发给PHP的少,占用内存也就不大,自然也就可以优化了查询速度。如果MYSQL交给PHP的数据量比较多,最有可能的情况就是把PHP的默认使用内存(默认8M的内存)占满。程序会直接抛出一个内存溢出的错误!
5.如果数据量特别大,又是比较单一的应用,比如纯新闻站点,单从查询优化方面讲,可以使用第三方插件,比如xunsearch(迅搜),可以实现上亿条数据秒搜的查询效率(全文索引的一个插件),官网:http://www.xunsearch.com, xunsearch的原理是类似于百度等关键词词库索引。另外基于Sphinx+MySQL,也可以实现千万级数据全文检索。
6.如果应用比较复杂的应用,模块比较多也比较杂乱,第三插件的应用成本可能也比较大,则最好采用“分库,分表,分服务器”的集群处理方案。再加上负载均衡解决并发请求问题。大型应用一般就是这种方案解决的。靠拿大量的资金堆服务器堆出来的。大型网站都是靠钱堆的,不是单靠优化PHP,优化MYSQL优化出来的。
7.能用小整型绝对不用大整型,能用4个字符串长度的,绝对不设计成8个字符串。
8.适当设计数据冗余,将A表中的一些值重新在B表里面再存一份,这样可以避免关联查询。只查B表就可以得到需要的数据了,就不需要再关联从A表中取出关联的数据了。比如A表是学生表,B表是学校表,如果查完B表要显示学生姓名,而学生姓名存在A表中,B表中以前只有学生ID,没有学生姓名,这时候这种需求就建议将A表中的学生姓名在B表中再建个字段再存一份,这就是数据冗余思想。
9.将多条记录化为一条记录的方案:即多个值存到一个字段里,例如:投票系统中的用户信息。本来每个用户投一次需要生成一行新的记录,但是如果每天每个被投票对象只能被投100票,这种情况就不需要生成新记录,将多个值不断用PHP处理,然后UPDATE放在同一个字段里就可以了。

任务

创建增,删,查,改,连接数据库五个函数,最后通过函数的调用完成MySQL的增删查改的功能;

相关文章

  • PHP操作Mysql常用函数

    一、操作步骤: 连接MySQL数据库 判断是否连接成功 选择数据库 设置字符集 准备SQL语句 向MySQL服务发...

  • 2018-01-08 技术笔记

    json_encode 函数 PHP的json_encode函数在转化数组的时候有两个规则: mysql 常用操作命令

  • php操作redis大全

    php连接redis测试 php操作redis函数封装 php操作redis大全,基本上php操作redis常用的...

  • php操作redis大全

    php连接redis测试 php操作redis大全,基本上php操作redis常用的函数都在下面了

  • PHP扩展

    1、PHP扩展简介 2、PHP常用扩展 MySQL-提供PHP操作MySQL数据库的功能 gd2-动态撞见图片 x...

  • 三. PHP与MySQL关系大揭秘

    PHP内置MySQL函数学习(1) PHP内置MySQL函数学习(2) PHP内置MySQL函数学习(2)

  • php常用mysql函数

    一、使用数据库 1、连接数据库: 注:其他参数详见php用户手册 2、选择数据库: 3、 设置数据库字符集: 4、...

  • PHP操作mysql

    准备 事实上:PHP本身不能操作数据库(mysql);但是PHP有扩展可以实现操作mysql PHP操作mysql...

  • 你想不到的最简单php操作MySQL

    千峰PHP Php操作mysql必须先开启mysq扩展函数库 首先先开启extension = mysqli_dl...

  • php操作数据库

    PHP操作MySQL 每日目标 能够使用php连接MySQL数据库 能够使用php对MySQL进行查询操作 能够使...

网友评论

      本文标题:PHP操作Mysql常用函数

      本文链接:https://www.haomeiwen.com/subject/jspfcxtx.html