• MySQL和SQL Server基本语句总结(三)


    这一节主要总结一下在PHP中使用Mysql进行数据库的编程。

    使用MYSQL:

    常用函数

      1.mysql_connect(服务器名称,用户名,密码) //   判断连接  错误则使用 mysql_error 函数

      2.mysql_select_db() //选择数据库

      3.mysql_query() //执行语句 返回结果集 或者返回BOOL值

      4.对结果集的处理

        mysql_fetch_array// 取得结果集中的一行的数据  可以是数字 也可以是字段

        mysql_fetch_assoc  //数组 字段

        mysql_fetch_object //获取一行的对象 //用的较少 //但是是个趋势 转向面向对象

        mysql_fetch_row  //获取一行 数组保存  用的较多

        mysql_affected_rows // 影响的行数 用于判断

        mysql_free_result //释放结果集

        mysql_num_fields //取得字段的数目

        mysql_num_rows //取得行的数目

        mysql_close //关闭连接

      使用Mysqli:

        和上面差不多 不过所有的都被封装到一个类中

      1.实例化一个对象   new MySQLi(和上面一样,“数据库名称”);     ->connect_error 返回错误

      2.->select_db选择数据库  ///

      3.->query  //执行语句 这里还有批量执行多条语句 下面再说

      4.对结果集的处理

       ->fetch_row  ->fetch_array  ->fetch_assoc  ->fetch_object

       ->num_rows  ->field_count    ->free    ->close  //这些都和上面的函数一样 只不过被封装到类里面了

    上面是一些常用的基础性的用法

    下面来总结执行多条SQL 语句

    先看代码

    //执行插入操作

    $mysqli=new MySQLi("localhost","root","87129291","xiaoyuan"); 
    if ($mysqli->connect_error)
    	 die($mysqli->connect_error);
    $mysqli->query("set names gbk");
    $sqls="insert into prifession values(5,'信息');";  //这里注意最后写上分号
    $sqls.="insert into prifession values(6,'机械')";  
    if (!$mysqli->multi_query($sqls))
    	    die("插入失败");
    

     //执行获取结果集操作

     $mysqli=new MySQLi("localhost","root","87129291","xiaoyuan"); 
    if ($mysqli->connect_error) die($mysqli->connect_error); $mysqli->query("set names gbk"); $sqls="select *from prifession;"; $sqls.="select *from yuanxi;";
    if ($res=$mysqli->multi_query($sqls)) //执行多条语句 返回是BOOL值 { do { $rus=$mysqli->store_result(); // 获取到一个结果集 while($row=$rus->fetch_row()) { var_dump($row); echo "<br/>"; } echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br/>"; $rus->free(); //释放结果集 if (!$mysqli->more_results()) //判断是否还有 break; }while($mysqli->next_result()); //获取到下一个结果集 }

     下面总结事务处理

     代码

    $mysqli->autocommit(false); //关闭自动提交
    $sql1="update prifession set id=id+2 where id=5"; $sql2="update prifession1 set id=id+2 where id=6"; $d1=$mysqli->query($sql1); $d2=$mysqli->query($sql2); if (!$d1||!$d2) // 判断 是否错误 $mysqli->rollback(); //执行回滚操作 else $mysqli->commit(); //执行提交操作

    下面总结预编译

    预编译其实就是给数据库(服务器)提供一个模板 接下来的操作就不需要再进行编译 直接获取数据 这样可以很快的获取到或者添加等数据库里面大量的数据 (新手,用的不多)

    代码

     1.

             $sql="insert into prifession values(?,?)"; //这里问号是下面要增加的数据
    	 $mysqli_stmt=$mysqli->prepare($sql); //准备操作
    	 $id=80;
             $name="the yesterday"; 
    //绑定 i 整型 d double类型 s 字符串类型 $mysqli_stmt->bind_param("is",$id,$name); $b=$mysqli_stmt->execute() or die("$mysqli_stmt->error"); //执行上面的语句 $id=9; $name="ppp"; $mysqli_stmt->bind_param("is",$id,$name); $b=$mysqli_stmt->execute() or die("$mysqli_stmt->error"); $id=10; $name="qqq"; $mysqli_stmt->bind_param("is",$id,$name); $b=$mysqli_stmt->execute() or die("$mysqli_stmt->error"); $mysqli_stmt->close(); //关闭预编译指令 注意 这里一定要关闭预编译 否则后面的处理还是这套模板 会产生错误

     2.

      $sql="select name from prifession where id>?";
      $mysqli_stmt=$mysqli->prepare($sql);
      $id=10;
      $mysqli_stmt->bind_param("i",$id);
      $mysqli_stmt->bind_result($name); //增加了绑定结果集
      $mysqli_stmt->execute();
      while($mysqli_stmt->fetch()) // 获取结果到上面的变量中
          echo "$name<br/>";
      $id=1;
      $mysqli_stmt->bind_param("i",$id);
      $mysqli_stmt->execute();
      while($mysqli_stmt->fetch())
           echo "$name<br/>";
      $mysqli_stmt->free_result(); //释放结果集
      $mysqli_stmt->close(); //关闭预编译指令
    

    上面是PHP中数据库的常用操作,下面我会总结C++中的使用方法。

       

      

       

  • 相关阅读:
    2019.10.11CSS
    2019.10.11 THML
    虚拟机FAQ
    thinkpad安装虚拟机 开启虚拟功能要在bios的security里面设置
    JDK在windows系统下环境变量的设置
    有关operamasks-ui的一些信息汇总
    从用List给ArrayList赋值看容器的传值,最好用.addAll
    给eclipse安装svn插件
    Java接口 枚举型Enumeration
    linux下的grep命令
  • 原文地址:https://www.cnblogs.com/fightfuture/p/3470959.html
Copyright © 2020-2023  润新知