zoukankan      html  css  js  c++  java
  • PHP连接MySQL数据库

    PHP连接MySQL数据库

    php连接MySQL数据库的两种编码方式

    PHP连接MySQL数据库的方式

    面向过程的编码风格

        <?php
                             //一、面向过程的编码风格
            //1.PHPMySQL建立连接
                /*语法mysqli_connect(host,username,passwd,dbname,port);
                mysqli_connect()方法具有返回值,返回值就是PHPMySQL数据库建立连接的连接对象
                    *host - MySQL数据库所在的计算机的ip地址
                    * username - 登陆MySQL数据库的用户名称
                    * passwd - 登陆MySQL数据库的用户密码(如果密码为空则写  “” 站位)
                    * dbname - 要操作的数据库的名称
                    * port - MySQL数据库所使用的端口号(一般默认为3306,不建议修改哦)
                */
            $connect = mysqli_connect('127.0.0.1','root','','bigspinach','3306');
            //2.PHPMySQL数据库发送sql语句,并接收返回的结果
                //2.1 编写sql语句
                    /*
                        *增删改操作返回Boolean
                            * 增:INSERT INTO 表名 VALUES (所有字段值)    注意:主键自增字段需写成 NULL
                                 INSERT INTO 表名 字段名=新字段值 WHERE 字段名=字段值
                            * 删:DELETE FROM 表名 
                                 DELETE FROM  表名   WHERE 字段名=字段值  
                            *  UPDATE 表名 SET 字段名=字段值      注意:这样修改会修改所有该字段的值
                                 UPDATE 表名 SET 字段名=新字段值 WHERE 字段名=字段值
                        *查操作返回  结果集对象
                            1)基本查询
                                SELECT * FROM 表名
                                SELECT 字段名1,字段名2,... FROM 表名
                            2)条件查询
                                SELECT * FROM 表名 WHERE 字段值=字段名                  
                            3)排序查询
                                SELECT * FROM 表名 ORDER BY 字段名
                                正序:  SELECT * FROM 表名 ORDER BY 字段名  ASC
                                倒序:SELECT * FROM 表名 ORDER BY 字段名  DESC
                            4)模糊查询
                                SELECT * FROM 表名 WHERE 字段名 LIKE "字符串%%"
                                                字符串%字符串
                            5LIMITMySQL方言)
                                SELECT * FROM 表名 LIMIT [位置偏移量,]行数;
                                SELECT * FROM 表名 LIMIT 0,5;     查询第一行数据开始,显示5
                        //解析查询结果(mysqli_result对象)
                            mysqli_result对象
                            * 属性
                                * $field_count 字段数量
                                * $num_rows  多少条数据记录
                            * 方法
                                *(1) mysqli_fetch_array($result,[result]);
                                    *$result - 结果集对象
                                    * result - 解析为数组的返回数组的方式
                                        * a.关联数组mysqli_assoc
                                        * b索引数组mysqli_num
                                        * c.两种数组都返回mysqli_both(默认值)
                                    方法的具体使用
                                    $arr=new array();
                                    while($row=mysqli_fetch_array($result,num)){
                                        array_push($arr,$row);                              
                                             *$arr:要压入的数组
                                             * $row:循环得到的每一条数据记录                                
                                    }
                                *(2) mysqli_fetch_assoc($result)  该方法返回索引数组
                                 方法的具体使用
                                    $arr=new array();
                                    while($row=mysqli_fetch_assoc($result)){
                                        array_push($arr,$row);                                                                                              
                                    }                   
                    */
              $sql = "DELETE FROM liukai ";//删除名为 liukai 的数据表
                //2.2解决中文乱码问题--固定套路 mysqli_query($connect连接对象,'SET NAMES UTF8');
              mysqli_query($connect,'SET NAMES UTF8');
                //2.3sql语句发送给MySQL数据库,并接收其返回的结果
              $result = mysqli_query($connect,$sql);
              //3.PHPMySQL数据库关闭连接
              mysqli_close($connect);
        ?>
    化繁为简
    <?php
        //1.建立连接
            $connect=mysqli_connect('localhost','root','','bigspinach','3306');
        //2.定义sql语句
            $sql='select * from liukai';
            mysqli_query($connect,'set names utf8');
        //3.发送SQL语句
            $result=mysqli_query($connect,$sql);
            $arr=array();//定义空数组
            while($row =mysqli_fetch_array($result)){
                //var_dump($row);
                    //array_push(要存入的数组,要存的值)
                array_push($arr,$row);
            }
            var_dump($arr);
        //4.关闭连接
           mysqli_close($connect);
     ?>

    面相对象的编码风格

        <?php
                            //面向对象的编码风格
            //1.new一个 mysqli(host,username,passwd,dbname,port)对象 ====等同于建立连接
            //2.定义sql语句
            //3.调用mysqli 对象    query($sql)方法并得到其返回结果值
            //4.调用mysqli 对象  close()方法关闭连接
            $mysqli = new mysqli('127.0.0.1','root','','bigspinach','3306');
            $sql = "select * from  where 姓名 = liukai ";
            $mysqli -> query('set names utf8');
            $mysqli -> query($sql);
            $mysqli -> close();
        ?>
  • 相关阅读:
    codevs 1450 xth 的旅行
    Loj #6287 诗歌
    Codeforces 323C Two permutations
    Spoj MKTHNUM
    [TJOI2015]弦论
    Spoj SUBLEX
    bzoj 4338: BJOI2015 糖果
    bzoj 3462: DZY Loves Math II
    bzoj 2843: 极地旅行社
    清北学堂模拟赛d4t5 b
  • 原文地址:https://www.cnblogs.com/wangchaonan/p/10731546.html
Copyright © 2011-2022 走看看