php使用pdo连接并查询sql数据库的方法


Posted in PHP onDecember 24, 2014

本文实例讲述了php使用pdo连接并查询sql数据库的方法。分享给大家供大家参考。

具体实现代码如下:

$login = "root"; 

$passwd = "mysql"; 

try{ 

  $db=new pdo('mysql:host=localhost;dbname=mysql',$login,$passwd); 

  foreach($db->query('select * from test') 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";  

class db extends pdo {    

 public function __construct(){         

 try {              

 parent::__construct("$globals[dsn]", $globals['user'], $globals['pass']);          

 } catch (pdoexception $e) {          

  die("error: " . $e->__tostring() . "<br/>");        

  }     

  }         

 public final function query($sql){         

 try {            

  return parent::query($this->setstring($sql));         

  }catch (pdoexception $e){             

  die("error: " . $e->__tostring() . "<br/>");        

   }

   }         

   private final function setstring($sql){         

   echo "我要处理一下$sql";         

   return $sql;    }} 

   $db=new db(); 

   $db->setattribute(pdo::attr_case, pdo::case_upper); 

   foreach ($db->query('select * from xxxx_menu') as $row) {     

   print_r($row); 

   } 

$db->exec('delete from `xxxx_menu` where mid=43');

关于pdo说明

pod(php data object)扩展在php5中加入,php6中将默认识用pdo连接数据库,所有非pdo扩展将会在php6被从扩展中移除。该扩展提供php内置类 pdo来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连接不统一的问题。

我是配置在windows下做开发用的。

pdo的目标:

提供一种轻型、清晰、方便的 api,统一各种不同 rdbms 库的共有特性,但不排除更高级的特性,通过 php 脚本提供可选的较大程度的抽象/兼容性.

pdo的特点:

性能,pdo 从一开始就吸取了现有数据库扩展成功和失败的经验教训,因为 pdo 的代码是全新的,所以我们有机会重新开始设计性能,以利用 php 5 的最新特性.

能力

pdo 旨在将常见的数据库功能作为基础提供,同时提供对于 rdbms 独特功能的方便访问.

简单

pdo 旨在使您能够轻松使用数据库,api 不会强行介入您的代码,同时会清楚地表明每个函数调用的过程.

运行时可扩展

pdo 扩展是模块化的,使您能够在运行时为您的数据库后端加载驱动程序,而不必重新编译或重新安装整个 php 程序,例如,pdo_oci 扩展会替代 pdo 扩展实现 oracle 数据库 api,还有一些用于 mysql、postgresql、odbc 和 firebird 的驱动程序,更多的驱动程序尚在开发.

希望本文所述对大家的php数据库程序设计有所帮助。

PHP 相关文章推荐
Sorting Array Values in PHP(数组排序)
Sep 15 PHP
php合并js请求的例子
Nov 01 PHP
mac下安装nginx和php
Nov 04 PHP
PHP获取指定函数定义在哪个文件中以及其所在的行号实例
May 08 PHP
PHP解析RSS的方法
Mar 05 PHP
简单介绍PHP的责任链编程模式
Aug 11 PHP
CodeIgniter配置之config.php用法实例分析
Jan 19 PHP
Yii2使用dropdownlist实现地区三级联动功能的方法
Jul 18 PHP
PHP带节点操作的无限分类实现方法详解
Nov 09 PHP
使用laravel的Eloquent模型如何获取数据库的指定列
Oct 17 PHP
php的RSA加密解密算法原理与用法分析
Jan 23 PHP
Laravel框架下的Contracts契约详解
Mar 17 PHP
php将access数据库转换到mysql数据库的方法
Dec 24 #PHP
php启用sphinx全文搜索的实现方法
Dec 24 #PHP
php中mail函数发送邮件失败的解决方法
Dec 24 #PHP
微信公众平台接口开发入门示例
Dec 24 #PHP
PHP获取youku视频真实flv文件地址的方法
Dec 23 #PHP
php实现refresh刷新页面批量导入数据的方法
Dec 23 #PHP
微信公众平台开发关注及取消关注事件的方法
Dec 23 #PHP
You might like
默默简单的写了一个模板引擎
2007/01/02 PHP
php pki加密技术(openssl)详解
2013/07/01 PHP
CI框架AR操作(数组形式)实现插入多条sql数据的方法
2016/05/18 PHP
PHP实现的数组和XML文件相互转换功能示例
2018/03/15 PHP
PHP fclose函数用法总结
2019/02/15 PHP
js png图片(有含有透明)在IE6中为什么不透明了
2010/02/07 Javascript
JavaScript 放大镜 移动镜片效果代码
2011/05/09 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
js与运算符和或运算符的妙用
2014/02/14 Javascript
javascript实现滑动解锁功能
2014/12/31 Javascript
jQuery学习笔记之创建DOM元素
2015/01/19 Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
2015/07/27 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
2016/11/22 Javascript
jQuery实现checkbox列表的全选、反选功能
2016/11/24 Javascript
JS实现拖拽的方法分析
2016/12/20 Javascript
js实现省份下拉菜单效果
2017/02/15 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
Vue $emit()不能触发父组件方法的原因及解决
2020/07/28 Javascript
利用Python演示数型数据结构的教程
2015/04/03 Python
python数组复制拷贝的实现方法
2015/06/09 Python
Python实现采用进度条实时显示处理进度的方法
2017/12/19 Python
Python读取图片为16进制表示简单代码
2018/01/19 Python
Python实现的生产者、消费者问题完整实例
2018/05/30 Python
Python实现判断一个整数是否为回文数算法示例
2019/03/02 Python
Python使用dict.fromkeys()快速生成一个字典示例
2019/04/24 Python
Python Django给admin添加Action的方法实例详解
2019/04/29 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
python字典按照value排序方法
2020/12/28 Python
详解Canvas事件绑定
2018/06/27 HTML / CSS
系统管理员的职责包括那些?管理的对象是什么?
2013/01/18 面试题
索桥的故事教学反思
2014/02/06 职场文书
海飞丝广告词
2014/03/20 职场文书
消防安全主题班会
2015/08/12 职场文书
2016年幼儿园教研活动总结
2016/04/05 职场文书
2019年图书室自查报告范本
2019/10/12 职场文书
Python NumPy灰度图像的压缩原理讲解
2021/08/04 Python