测试代码如下:
<?php
/**************************
@Filename: pdotest.php
@Content : PDO操作MySQL,Access(测试)
**************************/
if($_GET['db'] == 'mysql')
{
$dns = 'mysql:host=localhost;dbname=test';
$dbuser = 'root';
$dbpass = 'root';
$db = new PDO($dns,$dbuser,$dbpass);
}
else
{
$db = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=".getcwd()."//test.mdb");
}
if($_POST['reg'])
{
$db->exec("INSERT INTO t_user (name,email) VALUES ('".$_POST['name']."','".$_POST['email']."') ;");
// header('Location:'.$_SERVER['PHP_SELF']);
?>
<a href="pdotest.php">返回</a>
<?
}
else
{
$html = '
<div id="new">
<form action="'.$_SERVER['REQUEST_URI'].'" method="post">
Name: <input type="text" name="name" size="10" />
Email: <input type="text" name="email" size="15" />
<input type="submit" name="reg" value="Register" />
</form>
</div>
';
$re = $db->query("SELECT uid,name,email FROM t_user ORDER BY email ;");
while($rs = $re->fetch())
{
$userlisthtml .= '
<tr><td>'.$rs['uid'].'</td><td>'.$rs['name'].'</td><td>'.$rs['email'].'</td></tr>';
}
$html .= '
<div id="list">
<table border="1">
<caption>User List</caption>
<thead>
<tr><th>ID</th><th>Name</th><th>Email</th></tr>
</thead>
<tbody>'.$userlisthtml.'
</tbody>
</table>
</div>
';
}
echo $html;
?>
测试环境:
php.ini文件:打开 extension=php_pdo_odbc.dll 去掉分号 打开aceess数据库驱动
mysql 默认打开的
访问路径:
mysql数据库
http://192.168.1.21/lava_guess2009/test/pdo/pdotest.php?db=mysql
aceess 数据库
http://192.168.1.21/lava_guess2009/test/pdo/pdotest.php
特点: 使用不同数据库只要改动连接驱动即可,代码不用作任何改变,也就是抽象层的好处.
分享到:
相关推荐
下面就来介绍一下数据库抽象层PDO的使用: PDO(PHP Data Objects)是一个轻量级的PHP扩展,提供了一个数据访问抽象层。还要就是PDO只能在PHP5.0以上版本使用。 下面来介绍一下PDO常用的预定义常量: PDO::PARAM_BOOL...
PHP数据库抽象层:是指封装了数据库底层的操作的,介于PHP逻辑程序代码和数据库之间的中间件。这就意味当从一个数据库系统向另一个数据库系统迁移时,几乎不用更改太多的程序代码,屏蔽不同数据库之间的差异 PDO:...
它提供了一个抽象层来访问数据,不管您使用的是哪个数据 库,并确保有一个单独的对象实例/数据库连接。它可以连接到几个可能的SQL数据库使用可用的PDO驱动程序。目前它支持MySQL、 PostgreSQL、Oracle、Microsoft SQL ...
本文实例讲述了php在数据库抽象层简单使用PDO的方法。分享给大家供大家参考,具体如下: 测试代码如下: <?php /************************** @Filename: pdotest.php @Content : PDO操作MySQL,Access(测试) ***...
PHP中PDO数据库抽象层的应用研究.pdf
PDO扩展为PHP访问数据库定义了一个轻量级的,一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据. PDO支持的PHP版本为PHP5.1以及更高的版本,而且在PHP5.2下...
目前而言,实现“数据库抽象层”任重而道远,使用PDO 这样的“数据库访问抽象层” 是一个不错的选择。 PDO->beginTransaction() — 标明回滚起始点 PDO->commit() — 标明回滚结束点,并执行SQL PDO->__construct() ...
组件-数据库使用 PDO 的 PHP 5.3+ 数据库抽象层。 ###要求PDO FluentPDO (包含) Phpf\Util ##基本用法首先,初始化数据库设置; 连接本身是延迟加载的。 use Phpf \ Database \ Database ;Database :: init ('...
完整版 MySQL8.0从入门到精通 MySQL数据库教程 第23章 PDO数据库抽象类库(共12页).ppt 完整版 MySQL8.0从入门到精通 MySQL数据库教程 第24章 开发网上商城(共6页).ppt 完整版 MySQL8.0从入门到精通 MySQL数据库...
pdo_数据抽象层.chm内容包括五个常见 PHP 数据库问题和数据对象 (PDO) 抽象层与 Oracle————经验的总结。
它所提供的数据接入抽象层,具有与具体数据库类型无关的优势,为它所支持的数据库提供统一的操作接口。目前支持的数据库有Cubrid、FreeTDS / Microsoft SQL Server / Sybase、Firebird/Interbase 6、IBM DB2、IBM ...
PHP5.4.8实现源码。这是很经典的一版PHP源码。其引入稳定的数据库抽象层PDO。其PDO是用C语言实现。理解PDO对学习数据库和PHP语言都有比较好的作用。我的博客将推出一篇关于PHP的PDO源码分析文章。基于此源码
强大的 PHP 数据库抽象层 (DBAL),具有许多用于数据库模式自省和管理的功能。 Doctrine 数据库抽象和访问层 (DBAL) 围绕类似 PDO 的 API 提供了一个轻量级和精简的运行时层,以及许多附加的横向功能,例如通过 OO ...
PDO:PHP Data Object,PHP数据对象(数据抽象层) 作用:能够解决用户在需要使用不同的数据库的时候进行来回的切换,PDO能够自动的进行数据库的切换,而且还能将所有的有可能存在的不兼容的语法进行兼容性处理。
文档介绍了PHP如何通过pdo操作MySQL数据库,说明很详细,还有很多具体的代码示例!
教义DBAL 强大的数据库抽象层,具有许多用于数据库模式自省,模式管理和PDO抽象的功能。 更多资源:
它提供了一个数据访问抽象层,不管php连接的是什么数据库都可以通过一致的函数执行查询和获取数据。PDO在php5.1发行时开始附带,php之前的版本不支持用于支付的抽象的PHP库特性:(1)灵活性,可以在php运行期间,...
PHP与FTP,PostgreSQL数据库,SQLite数据库,PDO数据库抽象层,PHPLib数据库抽象层,网站策略与安全,PHP调试、升级与优化,ThinkPHP框架,Zend Framework框架,明日导航网(ThinkPHP),明日搜索引擎(Zend ...