第10章 pdo方式访问数据库

第10章 pdo方式访问数据库

ID:21818361

大小:644.50 KB

页数:17页

时间:2018-10-20

第10章 pdo方式访问数据库_第1页
第10章 pdo方式访问数据库_第2页
第10章 pdo方式访问数据库_第3页
第10章 pdo方式访问数据库_第4页
第10章 pdo方式访问数据库_第5页
资源描述:

《第10章 pdo方式访问数据库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章PDO方式访问数据库10.1PDO的基本概念10.2PDO访问异构数据库的方法10.3PDO访问数据库实例10.1PDO的基本概念例如,在第9章介绍的mysql函数就只能访问MySQL数据库。如果需要处理Oracle,就必须安装和重新学习PHP中处理Oracle的扩展函数库,如图10.1所示。10.1PDO的基本概念访问每种数据库时都需要学习新的函数库,这很麻烦,而且使得PHP应用程序在异构数据库间的移植难以实现。为了解决这样的难题,就需要一个“数据库抽象层”。它能解决应用程序逻辑与数据库通信逻辑之间的耦合,通过这个通用接口传递所有与数据库相关的命令,PDO就是这样一个

2、“数据库抽象层”,它的作用是统一各种数据库的访问接口,能够轻松地在不同数据库之间进行切换,使得PHP程序在数据库间的移植容易实现。如图10.2所示描述了这一过程。10.1PDO的基本概念PDO对各种数据库的支持及对应使用的驱动名称,如表10.1所示。驱动名对应访问的数据库PDO_CUBRIDCubridPDO_DBLIBFreeTDS/MicrosoftSQLServer2005/SybasePDO_FIREBIRDFirebird/Interbase6PDO_IBMIBMDB2PDO_INFORMIXIBMInformixDynamicServerPDO_MYSQLMySQL

3、3.x/4.x/5.xPDO_OCIOracle(OCI=OracleCallInterface)PDO_ODBCODBCv3(IBMDB2,unixODBCandwin32ODBC)PDO_PGSQLPostgreSQLPDO_SQLITESQLite3及SQLite2PDO_SQLSRVMicrosoftSQLServer2008及以上/SQLAzurePDO_4D4D10.2PDO访问异构数据库的方法10.2.1安装PDO在Windows环境下PHP5.1以上版本中,PDO和主要数据库的驱动同PHP一起作为扩展发布,要激活它们只需要简单地编辑php.ini文件,去掉相应数

4、据库PDO驱动dll之前的注释符(;)即可。例如:[PHP_PDO_MYSQL]extension=php_pdo_mysql.dll//激活MySQL的PDO驱动[PHP_PDO_ODBC]extension=php_pdo_odbc.dll//激活ODBC的PDO驱动[PHP_PGSQL]extension=php_pgsql.dll//激活PostgreSQL的PDO驱动10.2.2创建PDO对象在使用PDO与数据库交互之前,首先要创建一个PDO对象,创建PDO对象的语句格式如下:$db=newPDO(DSN,username,password);其中,DSN是数据源名,

5、username为连接数据库的用户名,password为密码。针对不同DBMS的DSN是不同的,如表10.2所示。DBMSDSNSQLServer2005mssql:host=localhost;dbname=testdbSybasesybase:host=localhost;dbname=testdbMySQLmysql:host=localhost;dbname=testdbSQLServer2008sqlsrv:Server=localhost;Database=testdbOracleoci:dbname=//localhost:1521/testdbODBCodbc:

6、testdbPostgreSQLpgsql:host=localhost;port=5432;dbname=testdb10.2.3使用PDO创建好PDO对象后,就可以在编程中使用它来访问数据库了,对于PDO来说,访问不同数据库的接口是完全相同的。当执行INSERT、UPDATE和DELETE等没有结果集的查询时,使用PDO对象中的exec()方法去执行。该方法成功执行后,将返回受影响的行数。当执行返回结果集的SELECT查询时,或者所影响的行数无关紧要时,应当使用PDO对象中的query()方法。如果该方法成功执行指定的查询,则返回一个PDOStatement对象。如果使用了

7、query()方法,并想要了解获取的数据行总数,可以使用PDOStatement对象中的rowCount方法获取。10.3PDO访问数据库实例10.3.1安装SQLServer2008的PDO驱动从微软官网下载PHP的SQLServer2008扩展库SQLSRV20.EXE,解压并安装后,将其中的php_pdo_sqlsrv_53_ts_vc9.dll和php_sqlsrv_53_ts_vc9.dll复制到C:ProgramFilesPHPext下,再在配置文件php.ini末尾添加:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。