时间:2021-05-26
本文实例讲述了php pdo连接数据库操作。分享给大家供大家参考,具体如下:
pdo连接数据库的有点是能实现不同数据库之间的转换,而且有事务功能的回滚,更有pdo::prepare();pdo:::execute()函数的预处理查询,所以我个人认为pdo的功能还是比较强大的,所有这篇日志只为我自己而写,希望看到这篇日志的兄弟们能对你们有所帮助。
要用php连接数据库首先要要实例化pdo的类,并且要有数据源,服务器账号,服务器密码
数据源是数据库类型,服务器名称,数据库名称的一个集合。
<?php//以下是实例化一个pdo的带码$dsn="mysql:host=localhost;dbname=tanyong";//这就是数据源,$user="root";//这个是服务器的账号,我的电脑上是这样,就不知道你们的是不是,$pwd="";//这是我电脑上的服务器密码,就是我没设$pdo=new PDO($dsn,$user,$pwd);//实例化一个PDO连接$pdo->query("set names gbk");//设置从数据库里面传递过来的数据的编码格式?>事务介绍:事务介绍我就通过我自己的理解来讲解一遍吧,就是先要关闭数据库的自动提交功能(什么是自动提交功能?就是当我们写完一个sql语句后,按回车键执行不起,而要经过特殊的代码处理才能提交上去,后面我会介绍的)
然后写出你要执行的sql语句并将返回的结果赋给两个不同的变量,之后提交,如果在执行的时候其中1个或多个发生了错误,就进行事务回滚,即使回归初始状态(也就是前面在事务处理代码中的插入或改变或删除或查询的语句全部作废),还有一个优点是不会因为进入其他网页,或执行其他sql语句而影响到事务处理的进程
//以下是事务回滚的代码简介<?php$dsn="mysql:host=localhost;dbname=tanyong";//这就是数据源,$user="root";//这个是服务器的账号,我的电脑上是这样,就不知道你们的是不是,$pwd="";//这是我电脑上的服务器密码,就是我没设$pdo=new PDO($dsn,$user,$pwd);//实例化一个PDO连接$pdo->query("set names gbk");//设置从数据库里面传递过来的数据的编码格式$pdo->begintransaction();//在这里关闭mysql的自动提交功能$a=$pdo->query("insert into tongxue values('130042106','谭勇','男');$b=$pdo->query("insert into tongxue values('130042100','猪八戒','男')");if($a==true && $b==true){$pdo->commit();//提交事务} else{$pdo->rollback();//事务回滚}?>用mysql_num_rows()函数能数出数据库返回结果集的行数,以此来判断该用户输入的用户名和密码是否正确,那么在pdo中我们如何实现这个功能呢?
在pdo中有一个函数pdo::fetchall(),他的作用是将从数据库返回的一个结果集全部赋给获取它的值,之后再用count()函数数出行数具体事例代码如下
<?php$dsn="mysql:host=localhost;dbname=tanyong";//这就是数据源,$user="root";//这个是服务器的账号,我的电脑上是这样,就不知道你们的是不是,$pwd="";//这是我电脑上的服务器密码,就是我没设$pdo=new PDO($dsn,$user,$pwd);//实例化一个PDO连接$pdo->query("set names gbk");//设置从数据库里面传递过来的数据的编码格式$sql="select * from tongxue where id='130042106'";$shuju=pdo->prepare($sql);//这就是我们所说的预处理 $shuju->execute();//执行预处理的结果;$jg=$shuju->fetchall(PDO::FETCH_ASSOC);//将返回的结果集以数组的方式全部返回给变量$jg$hangshu=count($jg);//数出结果集的行数if($hangshu>0){echo '查询出来是有这个人的';} else{echo '查询出来是没有这个人的';}?>当我们的页面运行的sql语句较多时,可以用pdo当中的预处理,来减缓服务器的压力,这对于那些要做大型网站的项目来说是一个不错的选择,因为大型网站一天的浏览量是几万或十几万的.
下面我们来看看pdo的预处理
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了PHP实现的pdo连接数据库并插入数据功能。分享给大家供大家参考,具体如下:创建配置文件pdo_config.phppdo插入数据库pdo_ins
本文实例讲述了PHP的PDO常用类库。分享给大家供大家参考,具体如下:1、Db.class.php连接数据库setAttribute(PDO::ATTR_PER
本文实例讲述了ThinkPHP框架基于PDO方式连接数据库操作。分享给大家供大家参考,具体如下:一代码1、修改config.php文件'pdo',//注意DSN
本文实例总结了PHP中PDO连接数据库中各种DNS设置方法。分享给大家供大家参考,具体如下:pdo中DNS书写方式如下:mssql:host=localhost
本文实例讲述了PHP使用pdo连接access数据库并循环显示数据操作。分享给大家供大家参考,具体如下:PDO连接与查询:try{$conn=newPDO("o