PHP操做MySQL

1、PHP链接MySQL服务器php

  什么是PHP的MySQL函数库?mysql

    即一套PHP的函数库扩展包,在PHP文件下的“ext/php_mysql.dll”sql

  配置PHP做为MySQL服务器的客户端:数据库

    PHP配置文件php.ini中开启“extension=php_mysql.dll”数组

2、PHP操做MySQL的函数库步骤服务器

  ①链接数据库服务器函数

    mysql_connect  打开一个链接(推荐)fetch

    mysql_pconnect  打开一个持久链接(不推荐)spa

    mysql_connect("$host","$username","$password");code

    链接成功返回MySQL链接标识符,链接失败返回false

    例:

      $link=mysql_connect("localhost","root","1234");

  ②判断是否链接成功

    if(!$link){

      exit("数据库服务器链接失败,错误信息:".mysql_error()."错误号:".mysql_errno());

    }

    mysql_error():返回上一步操做的错误信息

    mysql_errno():返回上一步操做的错误号

  ③设置客户端字符集

    mysql_set_charset("utf8");

    mysql_query("set names utf8");

  ④选择数据库

    $db=mysql_select_db("$db_name" [,$link]);

    打开所链接的数据库服务器中的指定数据库,若不指定第二个链接参数,则默认打开最近的链接,成功返回true,失败返回false

  ⑤准备SQL语句

    $sql="SQL语句";

    注:引号中的SQL语句无需以分号结束

  ⑥发送SQL语句

    $res=mysql_query($sql [,$link]);

    对于DQL查询语句(select/explain/show/desc/describe)执行成功返回结果集资源,执行失败返回false;对于其余类型的sql语句,执行成功返回true,执行失败返回false 

  ⑦处理结果

    if(!$res){

      echo "执行失败,错误信息:".mysql_error();

    }else{

      echo "执行成功";

    }

    mysql_insert_id([$link]):获取主键ID,即auto_increment的值

    mysql_affected_rows([$link]):获取受影响数据条数(适用于增、删、改)

    mysql_num_rows($res):获取DQL查询语句返回的结果集资源包含的数据条数

    mysql_fetch_array($res [,MYSQL_BOTH]):将结果集资源解析成索引和关联的混合数组

      MYSQL_BOTH:可选参数,默认值,MYSQL_BOTH将获得一个同时包含索引和关联的混合数组;MYSQL_ASSOC将只获得一个关联数组,字段名做为键名字段值做为键值,做用同mysql_fetch_assoc();MYSQL_NUM将只获得一个索引数组,做用同mysql_fetch_row();

    mysql_fetch_row($res):将结果集资源解析成索引数组

    mysql_fetch_assoc($res):将结果集资源解析成关联数组,字段名做为键名字段值做为键值

    mysql_fetch_object($res):将结果集资源解析成对象

  ⑧关闭数据库链接

    mysql_free_result($res);  释放DQL查询语句的关联结果集资源

    mysql_close();

例1:

$link=mysql_connect("localhost","root",""); if(!$link){ exit("链接MySQL服务器失败,错误信息为:".mysql_error()."错误号为:".mysql_errno()); } mysql_set_charset("utf8"); $db=mysql_select_db("test01"); if(!$db){ exit("链接数据库失败,错误信息为:".mysql_error()."错误号为:".mysql_errno()); } $sql="insert users(username,password,sex) values('autumn','1111',null)"; $res=mysql_query($sql); if($res && mysql_affected_rows()>0){ echo "成功添加了".mysql_affected_rows()."条数据"; }else{ echo "添加数据失败,错误信息为:".mysql_error()."错误号为:".mysql_errno(); } mysql_close();

例2:

$link=mysql_connect("localhost","root","") or die("链接数据库服务器失败,错误信息为:".mysql_error()."错误号为:".mysql_errno()); mysql_set_charset("utf8"); $db=mysql_select_db("test01",$link) or die("链接数据库失败,错误信息为:".mysql_error()."错误号为:".mysql_errno()); $sql="select * from users"; $res=mysql_query($sql,$link); if(!$res){ echo "查询数据失败,错误信息为:".mysql_error()."错误号为:".mysql_errno(); }elseif(mysql_num_rows($res)==0){ echo "当前数据表中无数据"; }else{ echo "<table border='1' width='800'>"; echo "<tr>"; echo "<td>id</td>"; echo "<td>username</td>"; echo "<td>password</td>"; echo "<td>sex</td>"; echo "</tr>"; while($data=mysql_fetch_assoc($res)){ echo "<tr>"; echo "<td>".$data['id']."</td>"; echo "<td>".$data['username']."</td>"; echo "<td>".$data['password']."</td>"; echo "<td>".$data['sex']."</td>"; echo "</tr>"; } echo "</table>"; } echo "<br>"; echo "共查询到".mysql_num_rows($res)."条数据"; mysql_free_result($res); mysql_close();
相关文章
相关标签/搜索