mysqli的基本使用

1、查询mysql

<?php
      header("content-type:text/html;charset=utf-8");
      //这里演示一个使用mysql扩展操作数据库的流程

      //得到连接
      $con = @mysql_connect('localhost','tnblog','12345678');
      if (!$con) {
        die('连接失败,错误信息' . mysql_error());
      }

      //先选择数据库
      mysql_select_db('tnblog');
      //设置字符集
      mysql_set_charset('utf8');

      $sql='SELECT * FROM `user1`';

      if($res = mysql_query($sql)){

          // while($row = mysql_fetch_assoc($res)){//mysql_fetch_assoc取回的是关联数组
          // while($row = mysql_fetch_row($res)){  //返回的是索引数组
          //mysql_fetch_object//返回数组
          while($row = mysql_fetch_array($res)){    //mysql_fetch_array返回了关联数组,同时返回了索引数组
          echo '<pre>';
          var_dump($row);
          }
      }

      //释放结果集
      mysql_free_result($res);
      //关闭
      mysql_close($con);
mysqli的查询操作

2、使用mysql扩展进行dml操作

<?php
      header("content-type:text/html;charset=utf-8");
      //这里演示一个使用mysql扩展操作数据库的流程

      //得到连接
      $con = @mysql_connect('localhost','tnblog','12345678');
      if (!$con) {
        die('连接失败,错误信息' . mysql_error());
      }

      //先选择数据库
      mysql_select_db('tnblog');
      //设置字符集
      mysql_set_charset('utf8');

      // $sql = "INSERT INTO `user1` VALUES(,'宋江',md5('abc'),'sj@sohu.com', unix_timestamp('1990-11-10'),20)";
      $sql = "DELETE FROM `user1` WHERE id =5";

      if(mysql_query($sql)){
      echo '操作成功';
      }else{
      echo '操作失败' . mysql_error();
      exit;
      }


      //这里我们可能需要去判断是否对记录数有影响
      if(mysql_affected_rows($con)>0){
      echo '操作对记录有影响';
      }else{
      echo '操作对记录没有影响';
      }
      //dml不需要释放资源
使用mysqli扩展进行dml操作

3、其他SQL语句(删除table等等)

<?php
      header("content-type:text/html;charset=utf-8");
      //使用mysql扩展,发送其他的SQL语句(drop create alter...)

      //得到连接
      $con = @mysql_connect('localhost','tnblog','12345678');
      if (!$con) {
        die('连接失败,错误信息' . mysql_error());
      }

      //先选择数据库
      mysql_select_db('tnblog');
      //设置字符集
      mysql_set_charset('utf8');

      $sql='DROP TABLE `exam`';

      if(mysql_query($sql)){
      echo'操作成功';
      }else{
      echo'操作失败'.mysql_error();
      }
其他SQL语句操作mysqli

 

mysqli扩展库的基本使用(标准操作步骤)

<?php
      header("content-type:text/html;charset=utf-8");
      //mysqli扩展库来操作mysql数据库

      //1.创建一个对象mysqli对象
      $mySQLi = new MySQLi('localhost','tnblog','12345678','tnblog',3306);

      //2.检测是否创建成功
      if($mySQLi->connect_errno){
      die('连接失败:错误信息如下:' . $mySQLi->connect_error);
    }else{
      echo '连接成功';
    }

    //3.设置字符集
    $mySQLi->set_charset('utf8');

    //4.组织sql
    $sql = 'SELECT * FROM `user1`';

    //5.执行查询
    $res = $mySQLi->query($sql);
    echo '<pre>';
    //var_dump($res);

    //6.要取出每一条记录
    while($row = $res->fetch_assoc()){
    //这里我们就可以输出
    echo'<pre>';
    //var_dump($res);
    }

    //7.可以释放结果集
    $res->free();

    //8.关闭连接
    $mySQLi->close();
mysqli扩展库的操作步骤
<?php
    header("content-type:text/html;charset=utf-8");
    //mysqli扩展库来操作mysql数据库

    //1. 创建一个对象mysqli对象
    $mySQLi = new MySQLi('localhost', 'root', 'root', 'db100', 3306);

    //2. 确定是否创建成功
    if($mySQLi->connect_errno){
        
        die('连接失败 : 错误信息如下:' . $mySQLi->connect_error);
    }else{
        echo '连接成功!';
    }


    //3. 设置字符集
    $mySQLi->set_charset('utf8');

    //4. 组织sql
    $sql = 'SELECT * FROM `user1`';
    //5. 执行查询
    // $res 就是 代表从一个数据库查询中获取的结果集
    $res = $mySQLi->query($sql);
    echo '<pre>';
    var_dump($res);
    //6. 要取出每一条记录

    //这里我们有四种方法取出记录,推荐使用  $res->fetch_assoc()
    //1. $res->fetch_assoc() 返回的是关联数据
    //while($row = $res->fetch_assoc()){
    //2. $res->fetch_row()返回的是索引数组
//    while($row = $res->fetch_row()){
    //3. $res->fetch_array() 返回的关联数组和索引数组
//    while($row = $res->fetch_array()){
    //4. $res->fetch_object() 返回的是对象
    while($row = $res->fetch_object()){
        //这里,我们就可以输出
        echo '<pre>';
        var_dump($row);
        echo '<br> name = ' . $row->name .  '  age' . $row->age;
    }

    //7.可以释放结果集
    $res->free();
    //8.关闭连接
    $mySQLi->close();
mysqli获取数据的几张方法

 mysqli面向过程的写法(制作介绍,不建议使用)

<?php
    header("content-type:text/html;charset=utf-8");
    //mysqli面向过程

    //1. 创建一个连接
    $mysqli = mysqli_connect('localhost', 'root', 'root', 'db100', 3306);

    //2. 确定是否创建成功
    if(mysqli_connect_errno()){
        
        die('连接失败 : 错误信息如下:' . mysqli_connect_error());
    }else{
        echo '连接成功!';
    }

    //3. 设置字符集
    mysqli_set_charset($mysqli, 'utf8');

    //4. 组织sql
    $sql = 'SELECT * FROM `user1` WHERE id > 3';
    //5. 执行查询
    // $res 就是 代表从一个数据库查询中获取的结果集
    $res = mysqli_query($mysqli, $sql);
    
    //6. 要取出每一条记录

    
    while($row = mysqli_fetch_assoc($res)){
    
        //这里,我们就可以输出
        echo '<pre>';
        var_dump($row);
    }

    //7.可以释放结果集
    mysqli_free_result($res);
    //8.关闭连接
    mysqli_close($mysqli);
mysqli面向过程的写法(制作介绍,不建议使用)

 mysql面向对象的写法

<?php
    header("content-type:text/html;charset=utf-8");
    //讲解一下mysqli 进行dml操作(insert ,update,delete)

    $mySQLi = new MySQLi('localhost', 'root', 'root', 'db100', 3306);

    if($mySQLi->connect_errno){
        die('连接失败 ,错误信息是' . $mySQLi->connect_error);    
    }

    $mySQLi->set_charset('utf8');

    //$sql = "INSERT INTO `user1` VALUES (null, '武松', md5('123'), 'ws@sohu.com', unix_timestamp('1980-10-10'), 30)";
    //$sql = "UPDATE `user1` SET name='花和尚' WHERE id=6";
    $sql = "DELETE FROM `user1` WHERE name='武松'";

    //执行添加

    if($mySQLi->query($sql)){
        echo '执行成功';
    }else{
        echo '执行失败'. $mySQLi->error; 
    }

    //如何确定你的操作对记录有影响
    if($mySQLi->affected_rows > 0){
        echo '<br> 操作对记录有影响 影响数是' . $mySQLi->affected_rows;
    }else{
        echo '<br> 操作对记录没有影响';
    }


    //不需释放资源.
    $mySQLi->close();
mysqli面向对象的dml操作
原文地址:https://www.cnblogs.com/qianjilou/p/15578089.html