为了账号安全,请及时绑定邮箱和手机立即绑定
  • pdo 基本方法
    查看全部
  • 7.获得存放结果集中一条记录的关联数组 public static function getRow($sql=null){ if($sql!=null){ self::query($sql); } $result=self::$PDOStatement->fetch(constant("PDO::FETCH_ASSOC")); return $result; } 8.执行增删改操作,返回受影响的记录的条数 public static function execute($sql=null){ //获取连接标识符 $link=self::$link; if(!$link) return false; //保存本次查询语句 self::$queryStr=$sql; //判断之前是否有结果集,如果有的话,释放结果集 if(!empty(self::$PDOStatement))self::free(); //POD::exec()方法返回受影响的记录的条数 或 false $result=$link->exec(self::$queryStr); //查看本次查询是否有错误,如果有则打印本次错误信息 self::haveErrorThrowException(); if($result){ //保存上一步插入操作产生AUTO_INCREMENT self::$lastInsertId=$link->lastInsertId(); //保存上一步操作产生受影响的记录的条数 self::$numRows=$result; return self::$numRows; }else{ return false; } }
    查看全部
  • 5.自定义异常处理程序 public static function throw_exception($errMsg){ echo '<div > '.$errMsg.' </div>'; } 6.释放结果集 public static function free(){ self::$PDOStatement=null; }
    查看全部
  • 3.查询语句(只能执行一条SQL语句) public static function query($sql=''){ //获取连接标识符 $link=self::$link; if(!$link) return false; //判断之前是否有结果集,如果有的话,释放结果集 if(!empty(self::$PDOStatement))self::free(); //保存本次查询语句 self::$queryStr=$sql; //预处理语句只能执行一条SQL语句 self::$PDOStatement=$link->prepare(self::$queryStr); $res=self::$PDOStatement->execute(); //查看本次查询是否有错误,如果有则打印本次错误信息 self::haveErrorThrowException(); return $res; } 4.查看最近一次 查询 或 连接 是否有错误,如果有则打印本次错误信息并返回false public static function haveErrorThrowException(){ $obj=empty(self::$PDOStatement)?self::$link: self::$PDOStatement; $arrError=$obj->errorInfo(); //错误信息数组下标为[0]的值为'00000'表示没有错误 if($arrError[0]!='00000'){ //获取错误信息并抛出异常 self::$error='SQLSTATE: '.$arrError[0].' <br/>SQL Error: '.$arrError[2].'<br/>Error SQL:'.self::$queryStr; self::throw_exception(self::$error); return false; } if(self::$queryStr==''){ self::throw_exception('没有执行SQL语句'); return false; } }
    查看全部
  • 1.构造函数解析下篇 1.2).参数设置完成后的链接部分 //判断静态变量self::$link是否还没有没有被赋值(即之前没有数据库被连接) //即在之前没有连接其他数据库情况下,才能开始本次数据库的连接 if(!isset(self::$link)){ //保存本次连接参数 $configs=self::$config; if(self::$pconnect){ //开启长连接,添加到配置数组中 $configs['params'][constant("PDO::ATTR_PERSISTENT")]=true; } try{ self::$link=new PDO($configs['dsn'],$configs['username'],$configs['password'],$configs['params']); }catch(PDOException $e){ self::throw_exception($e->getMessage()); } //连接失败 if(!self::$link){ self::throw_exception('PDO连接错误'); return false; } //设置字符集 self::$link->exec('SET NAMES '.DB_CHARSET); //获取服务器版本 self::$dbVersion=self::$link->getAttribute(constant("PDO::ATTR_SERVER_VERSION")); //设置连接成功标志符 self::$connected=true; //释放临时存放连接参数变量 unset($configs); } }
    查看全部
  • 当返回的PDOStatement对象中存储了多个结果集,使用PDOStatement::fetchAll()方法每次只能取出一个结果集,此时需要使用PDOStatement ::nextRowset();移动结果集指针让其指向下一个结果集,才能用PDOStatement::fetchAll()或者PDOStatement::fetch()方法取到下一个结果集记录. $sql='call test1()'; //test1为SQL的PROCEDURE(存储过程) $stmt=$pdo->query($sql); //PDOStatement对象中存储了多个结果集 $rowset=$stmt->fetchAll(PDO::FETCH_ASSOC); //只能取出一个结果集 print_r($rowset); echo '<hr color="red"/>'; $stmt->nextRowset(); //移动结果集指针 $rowset=$stmt->fetchAll(PDO::FETCH_ASSOC); print_r($rowset);
    查看全部
  • 受影响的记录条数和最后插入的ID
    查看全部
  • PDO安装与配置
    查看全部
  • uri链接pdo
    查看全部
    1 采集 收起 来源:PDO连接数据库

    2016-08-27

  • $pdo->query($sql);执行查询操作,返PDOstatement对象(一个二维数组,可使用foreach遍历) //查询一般用query,而增删改一般用exec,因为这个返回受影响记录的条数更直观
    查看全部
  • query也可以执行插入等操作
    查看全部
  • pdo的exec方法执行创建表的语句,返回0
    查看全部
  • pdo操作数据库方法
    查看全部
  • 1、extension=php_pdo.dll 2、extension=php_pdo_mysql.dll
    查看全部
  • 吞吞吐吐
    查看全部

举报

0/150
提交
取消
课程须知
1、掌握PHP的基础语法知识 2、掌握MySQL基本增删改查语句 3、对面向对象的基本概念有清晰的认识,熟悉PHP中类定义的基本语法
老师告诉你能学到什么?
1、掌握PDO的基本概念及安装和配置 2、掌握PDO处理数据的基本操作 3、理解PDO事务处理 4、掌握类的封装的方法

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!