php使用pdo连接并查询sql数据库的方法
本文实例讲述了php使用pdo连接并查询sql数据库的方法。分享给大家供大家参考。
具体实现代码如下:
$login="root"; $passwd="mysql"; try{ $db=newpdo('mysql:host=localhost;dbname=mysql',$login,$passwd); foreach($db->query('select*fromtest')as$row){ print_r($row); } $db=null; }catch(pdoexception$e){ echo$e->getmessage(); }
再来看一个高级一点的:
$dbms='mysql';//数据库类型oracle用odi,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数了 $host='localhost';//数据库主机名 $dbname='test';//使用的数据库 $user='root';//数据库连接用户名 $pass='';//对应的密码 $dsn="$dbms:host=$host;dbname=$dbname"; classdbextendspdo{ publicfunction__construct(){ try{ parent::__construct("$globals[dsn]",$globals['user'],$globals['pass']); }catch(pdoexception$e){ die("error:".$e->__tostring()."<br/>"); } } publicfinalfunctionquery($sql){ try{ returnparent::query($this->setstring($sql)); }catch(pdoexception$e){ die("error:".$e->__tostring()."<br/>"); } } privatefinalfunctionsetstring($sql){ echo"我要处理一下$sql"; return$sql; }} $db=newdb(); $db->setattribute(pdo::attr_case,pdo::case_upper); foreach($db->query('select*fromxxxx_menu')as$row){ print_r($row); } $db->exec('deletefrom`xxxx_menu`wheremid=43');
关于pdo说明
pod(phpdataobject)扩展在php5中加入,php6中将默认识用pdo连接数据库,所有非pdo扩展将会在php6被从扩展中移除。该扩展提供php内置类pdo来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连接不统一的问题。
我是配置在windows下做开发用的。
pdo的目标:
提供一种轻型、清晰、方便的api,统一各种不同rdbms库的共有特性,但不排除更高级的特性,通过php脚本提供可选的较大程度的抽象/兼容性.
pdo的特点:
性能,pdo从一开始就吸取了现有数据库扩展成功和失败的经验教训,因为pdo的代码是全新的,所以我们有机会重新开始设计性能,以利用php5的最新特性.
能力
pdo旨在将常见的数据库功能作为基础提供,同时提供对于rdbms独特功能的方便访问.
简单
pdo旨在使您能够轻松使用数据库,api不会强行介入您的代码,同时会清楚地表明每个函数调用的过程.
运行时可扩展
pdo扩展是模块化的,使您能够在运行时为您的数据库后端加载驱动程序,而不必重新编译或重新安装整个php程序,例如,pdo_oci扩展会替代pdo扩展实现oracle数据库api,还有一些用于mysql、postgresql、odbc和firebird的驱动程序,更多的驱动程序尚在开发.
希望本文所述对大家的php数据库程序设计有所帮助。