登录  /  注册
博主信息
博文 81
粉丝 1
评论 0
访问量 120929
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
PDO操作数据库
有什么是忘不了的的博客
原创
806人浏览过
一、PDO连接数据库。
数据库  :chat,  数据表:CONTENT ;
try{
    $pdo = new PDO('mysql:host=127.0.0.1;dbname=chat','root','root');//连接数据库 chat库名
    $pdo->exec("SET names utf8");//编码格式
    }catch(PDOException $e){
    exit($e->getMessage());
    }
    $pdo = null; //关闭数据库。

参数绑定
     //对表中得列绑定
     $stmt->bindColumn(1, $name); //通过列号绑定
     $stmt->bindColumn('user_id ', $user_id ,PDO::PARAM_* ,20);  //通过列名绑定  第三个参数设置数据类型,整数型,字符型等,第四个参数设置数据长度。

     // 对sql 中的命名占位符绑定
     bindParam()//必须使用变量进行传入
     bindValue()//可以直接写到参数上
     $calories = 150;
     $stmt->bindParam(':calories', $calories, PDO::PARAM_INT);
     $stmt->bindValue(':colour', 12, PDO::PARAM_INT);
     
 二、查询数据
    
        $sql = "SELECT id ,content,create_time,user_id FROM `CONTENT` WHERE `id` > :id1 && `id` <:id";//:id是命名占位符。反引号可加可不加。
        //$stmt是PDOStatement类的对象
        $stmt = $pdo->prepare($sql);
        //以关联数组返回,
        $stmt->setFetchMode(PDO::FETCH_ASSOC);
        //参数绑定并查询
        if($stmt->execute([':id'=>10,':id1'=>0])){
        //吧结果集中的所有数据赋值给$ret
        $ret = $stmt->fetchAll();
        //从最后一次请求中抓取下一个结果。通过循环可以输出所有数据
        //$ret = $stmt->fetch();
        }else{
        	print_r($stmt->errorInfo());die;
        }

三、添加操作

                            rowCount()方法:返回受影响条数

                            errorlnfo()方法:错误提示

                                $sql ="INSERT INTO CONTENT (id,content,create_time,user_id) VALUES (:id,:content,:create_time,:user_id)";

                                $stmt = $pdo->prepare($sql);

                                //参数绑定

                                $id = null;

                                $content = "我的世界";

                                $create_time = time();

                                $user_id = 50;

                                $stmt -> bindParam(':id',$id);

                                $stmt -> bindParam(':content',$content,PDO::PARAM_STR,100);

                                $stmt -> bindParam(':create_time',$create_time,PDO::PARAM_INT);

                                $stmt -> bindParam(':user_id',$user_id,PDO::PARAM_INT);

                                //执行一条预处理语句

                                if ($stmt->execute()) {

                                 echo $stmt->rowCoUnt();

                                }else{

                                 exit(print_r($stmt->errorInfo(),true));

                                }

四、更新数据

            $sql ="UPDATE  CONTENT SET  content = :content,create_time = :create_time WHERE id = :id";

            其他跟添加一样。

五、删除数据

        一般采用软删除。就是把利用一个删除时间字段,如果字段有时间则不显示。无数据就显示出来。

        $sql ="DELETE  FROM CONTENT WHERE id = :id";

其他与添加一样。

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学