zoukankan      html  css  js  c++  java
  • PHP笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库

    1.使用php的MySQL扩展库操作MySQL数据库:

    php有3种方式操作MySQL数据库
    (1)mysql扩展库
    (2)mysqli扩展库
    (3)pdo
     
     
    mysql扩展库与mysql数据库区别 ?
    php设计者封装了一些方法去操作mysql数据库,这些方法集中起来形成了mysql扩展库。mysql数据库存放数据。
     
     
    2.使用php的MySQL扩展库操作MySQL数据库案例:
    (1)环境搭建:启用MySQL数据库,在php.ini文件中配置使用MySQL数据库,
              extension = php_mysql.dll
    可以通过:在http://localhost/test.php,这里的test.php文件之中写到:
    <?php
        phpinfo() ;//输出php可以使用的扩展库,验证是否开启了mysql服务
    ?>
     
    (2 )创建一张用户表,供我们使用:
    create table user1(
           id int  primary  key  auto_increment ,
           name varchar(32) not null ,
           passwd  varchar(64) not null ,
           email   varchar(128) not null ,    
          age   tinyint  unsigned not null
    ) ;
     
    预先加入数据:
    insert into user1(name,passwd, email,age) values ('zs', md5('123456'), 'zs@sohu.com' , 30) ;
    insert into user1(name,passwd, email,age) values ('ls', md5('123456'), 'ls@sohu.com' , 40) ;
    insert into user1(name,passwd, email,age) values ('ww', md5('123456'), 'ww@sohu.com' , 50) ;
    insert into user1(name,passwd, email,age) values ('评委', md5('123456'), 'pingwei@sohu.com' , 50) ;
     
    这里插入中文会报错:需要进行下面设置:
    show variables like '%char%';
    set character_set_client = gbk;
    set character_set_client = gbk;
    (2)编写php程序,完成对用户表的显示:
    步骤:
    -->1:获取连接:获取mysql扩展库和mysql数据库的连接
    -->2:选择数据库
    -->3:设置编码(建议有)
    -->4:发送指令sql
    -->5:接收返回结果,并处理。(显示)
    -->6:释放资源,关闭连接
    <?php
        header("Content-Type: text/html; charset=utf-8");
       //mysql扩展库操作mysql数据库步骤如下:
       //1.获取连接:获取mysql扩展库和mysql数据库的连接
       $conn = mysql_connect("127.0.0.1","root","root");//参数1:主机名,参数2:用户名,参数3:密码;
       if(!$conn) {
           die("连接失败".mysql_error());
       }
       //2.选择数据库
       mysql_select_db("test");
       
       //3.设置编码(建议有)
       //mysql_
      
      //4.发送指令sql(ddl 数据定义语句),dml (数据操作语句 update insert delete),dql(数据查询语言 select) ,dtl (数据事务语言 rollback commit...)
       $sql = "select *from user1";
       //函数
       //$res表示结果集,你可以简单的理解就是一张表
       $res = mysql_query($sql,$conn);
       //var_dump($res);
       //5.接收返回结果,并处理。(显示)
       //mysql_fetch_row会依次取出$res结果集的下一行数据,赋值给$row
       //$row就是一个数组
       while($row = mysql_fetch_row($res)){
           //第一种:echo "<br/> $row[0]--$row[1]--$row[2]";
           //第二种:echo "<br/>";
           //        var_dump($row);
           //第三种:
           foreach($row as $key=> $val) {
               echo "--$val";
           }
           echo "<br/>";
       }
       //6.释放资源,关闭连接
         mysql_free_result($res);
       mysql_close($conn);
       
       
    ?>

     上面代码提到了三种显示数据的方法结果如下:

        第一种:echo "<br/> $row[0]--$row[1]--$row[2]";

        第二种:echo "<br/>"; var_dump($row);

      第三种:foreach($row as $key=> $val) {
                              echo "--$val";
                   }
                   echo "<br/>";
     

    mysql_free_result($res); //释放占用的计算机资源,否则计算机会越来越卡!

     mysql_close($conn);//释放连接,如果没有这一句,我们反复刷新页面访问.../mysql/mysqlDemo1.php,会出现很多TIME_WAIT的连接请求:如下

    反复刷新页面之后,我们输入一下cmd命令:


    查看结果:

    细节:

      1.使用完$res 结果集后,一定要及时的释放资源

      2.mysql_close()如果没有的话,系统也会自动地关闭

      3.从$res获取行数据的时候,处理mysql_fetch_row($res),还有3个方法分别是如下:

         mysql_fetch_assoc($res),返回一个关联数组

         mysql_fetch_array($res),mysql_fetch_array() 是 mysql_fetch_row() 的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。

         mysql_fetch_object($res),mysql_fetch_object() 函数从结果集(记录集)中取得一行作为对象。若成功的话,本函数从 mysql_query() 获得一行,并返回一个对象。如果失败或没有更多的行,则返回 false。

  • 相关阅读:
    新浪JavaScript库
    Java中创建的对象多了,必然影响内存和性能
    Fidder抓包设置
    JavaScript处理股票数据
    按钮控制示例
    JavaScript更改css样式
    AppCan模拟器调试
    AppCan调试问题
    Java虚拟机JVM学习04 类的初始化
    COM组件和调用详细教程
  • 原文地址:https://www.cnblogs.com/hebao0514/p/2961581100f069e6244588fa0a215eab.html
Copyright © 2011-2022 走看看