PDOPDO是别人写的“数据库操作工具类”!使用它,类似这样:$obj = new PDO(连接信息);$sql = "select * from ....";$result = $pdo->query($sql);//返回一个pdo结果集$sql="delete/update/insert ....";result2 = $pdo->exec($sql); //返回一个真假值
手册可以找到:函数参考》数据库扩展》数据库抽象层》PDO
PDO针对不同数据库有相应的PDO引擎要操作某种数据,就去“打开”相应的引擎在php.ini的配置文件中,找到php_pdo_mysql.dll去掉分号
使用pdo链接mysql数据库$DSN = "mysql:host=服务器地址/明聪;port=端口号;dbname = 数据库名"$Options = array(PDO::MYSQL_ATTR_INIT_COMMAND=>'set name utf8');$pdo = new pdo($DSN,"用户名","密码",Options);
pdo对象的使用(常见方法)$result =$pdo->query("返回结果集的sql语句");结果:是一个pdo结果集对象失败:false$result = $pdo->exec("增删改语句");成果:true失败:false$pdo=null; //销毁对象
其他操作:$pdo->lastInsertId(); 获取最后添加的id值$pdo->beginTransaction(); 开启一个事务commit 提交一个事务rollBack 回滚一个事务inTransaction 判断当前是否在事务中setAttribute(属性名,属性值) 设置pdo对象的属性值
pdo的错误处理默认情况下,pdo采用“静默模式”处理错误,即返回false(errorcode;errorinfo)
异常模式可以简单理解为:适应面向对象语法的处理错误的一种语法结构try{}catch(Exception $e){}pdo对象的常用方法:
pdo的预处理语法:为了“重复执行”多跳结构类似的sql语句,而将该sql语句的形式“进行预先处理”(编译);该sql语句的“形式”中,含有“未给定的数据项”
语句1:$sql = "select * from tab where id = ?"//这里这个“?”就是未给定的数据项语法2:$sql = "select * from tab where id=:v1 and name = :v2 ";//这里这个:v1和:v2就是未给定的数据项怎么使用:分3步:1.对含预处理语法的sql语句进行预处理$stmt = $pdo->prepare($sql);2.对上述预处理的结果对象($stmt)的未复制数据,进行赋值$stmt->bindValue(数据项1,值1);$stmt->bindValue(数据项1,值2);…………3.执行执行:$stmt->execute();这样之后,该sql语句就算正式完成
[php学习笔记]PDO类操作数据库
最新推荐文章于 2021-01-28 11:56:26 发布