PHP操作MySQL

一世执手 提交于 2020-03-02 18:00:38

一、天龙八步

  1. 连接MySQL数据库

1 $link=mysqli_connect("localhost","root","meiyoumima");

  2. 判断是否连接成功

1 if($link){
2 
3       echo "数据库连接成功!";
4       }else{
5 
6       die("数据库连接失败");
7     }

  3. 设置字符集

1 mysqli_set_charset($link,"utf8");

  4. 选择数据库

1 mysqli_select_db($link,"demo");

  5. 准备SQL语句

1 $sql="select * from stu";

  6. 向MySQL服务发送SQL语句

1  $result=mysqli_query($link,$sql);

  7. 解析处理结果集

 1 echo "<center>";
 2     echo "<h1>学生信息</h1>";
 3     echo "<table border='1' width='800'>";
 4         echo "<tr>";
 5             echo "<th>ID</th>";
 6             echo "<th>姓名</th>";
 7             echo "<th>性别</th>";
 8             echo "<th>年龄</th>";
 9             echo "<th>班级</th>";
10             echo "<th>操作</th>";
11         echo "</tr>";
12         
13     //5.解析结果集
14     if($result && mysqli_num_rows($result)>0){
15         while($rows = mysqli_fetch_assoc($result)){
16             echo "<tr align='center'>";
17                 echo "<td>{$rows['id']}</td>";
18                 echo "<td>{$rows['name']}</td>";
19                 echo "<td>{$rows['sex']}</td>";
20                 echo "<td>{$rows['age']}</td>";
21                 echo "<td>{$rows['classname']}</td>";
22                 echo "<td>
23                         <a href='#'>编辑</a>
24                         <a href='#'>删除</a>
25                       </td>";
26             echo "</tr>";
27         }
28     }else{
29         die("没有查询到任何数据!");
30     }
31     echo "</table>";
32     echo "</center>";

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

1   mysqli_free_result($result);
2   mysqli_close($link);

二、六脉神剑

 1   //1.连接数据库服务器(如果连接成功是一个对象,如果失败呢则返回一个false)
 2     $link = mysqli_connect("localhost","root","meiyoumima") or die("数据库连接失败!");
 3     
 4     //2.设置编码
 5     mysqli_set_charset($link,"utf8");
 6     
 7     //3.选择数据库
 8     mysqli_select_db($link,"demo");
 9     
10     //4.定义sql语句,并发送执行(如果发送执行成功,是一个对象,如果失败,是一个false)
11     $sql = "select * from stu;";
12     $result = mysqli_query($link,$sql);
13     
14     echo "<center>";
15     echo "<h1>学生信息</h1>";
16     echo "<table border='1' width='800'>";
17         echo "<tr>";
18             echo "<th>ID</th>";
19             echo "<th>姓名</th>";
20             echo "<th>性别</th>";
21             echo "<th>年龄</th>";
22             echo "<th>班级</th>";
23             echo "<th>操作</th>";
24         echo "</tr>";
25         
26     //5.解析结果集
27     if($result && mysqli_num_rows($result)>0){
28         while($rows = mysqli_fetch_assoc($result)){
29             echo "<tr align='center'>";
30                 echo "<td>{$rows['id']}</td>";
31                 echo "<td>{$rows['name']}</td>";
32                 echo "<td>{$rows['sex']}</td>";
33                 echo "<td>{$rows['age']}</td>";
34                 echo "<td>{$rows['classname']}</td>";
35                 echo "<td>
36                         <a href='#'>编辑</a>
37                         <a href='#'>删除</a>
38                       </td>";
39             echo "</tr>";
40         }
41     }else{
42         die("没有查询到任何数据!");
43     }
44     echo "</table>";
45     echo "</center>";
46     //6.关闭数据库,释放结果集
47     mysqli_free_result($result);
48     mysqli_close($link);

 三、常用函数操作

  1. mysqli_connect();--连接数据库,并返回一个连接资源
    格式: mysql_connect(主机名,用户,密码);
    --其中参数可选,若不写则参考php.ini中默认配置

  2. mysqli_error(); --获取刚刚(最后)执行数据库操作的错误信息

  3. mysqli_errno(); --获取刚刚(最后)执行数据库操作的错误号
    错误号为0表示没有错误

  4. mysqli_select_db(数据库名[,数据库连接]);
    选择一个数据库,等同于"use 库名"语句

  5. mysqli_set_charset(字符编码); --设置字符编码
    例如:mysql_set_charset("utf8"); 等同于:mysql_query("set names utf8");

  6. mysqli_query(sql语句[,数据库连接]); -- 发送一条sql语句
    sql语句若是查询,则返回结果集,其他则返回boolean值表示执行是否成功。

  7. 解析结果集函数:
    mysqli_fetch_array(); --以关联和索引两种方式数组解析结果集也可以指定第二参数来定义返回格式:
    MYSQL_BOTH(0关联和索引)/MYSQL_NUM(2索引)/MYSQL_ASSOC(1关联)

    mysqli_fetch_row(); --以索引式数组解析结果集
    *mysqli_fetch_assoc(); --以关联式数组解析结果集
    mysqli_fetch_object(); --以对象方式解析结果集

  8. mysqli_free_result(结果集名); --释放结果集

  9. mysqli_close(数据库连接); --关闭数据库连接

  10. mysqli_num_rows(结果集); --获取结果集中的数据条数(专门针对于查询的)

  11. mysqli_num_fields(结果集); --获取结果集中的列数(字段数量)

  12. mysqli_result(); --定位取结果
    echo mysqli_result($result,0,3)."<br/>"; //获取第1条数据的第4列中的值
    echo mysqli_result($result,1,2)."<br/>"; //获取第2条数据的第3列中的值
    echo mysqli_result($result,5,4)."<br/>"; //获取第6条数据的第5列中的值

  13.mysqli_affected_rows — 取得前一次 MySQL 操作所影响的记录行数关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数。

  14. mysqli_insert_id — 取得上一步 INSERT 操作产生的 ID

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!