PHP PDO获取结果集
一、介绍PDO获取结果集,不得不介绍一下PDO是如果执行SQL语句,一般情况下分三种,
1.query()方法
query()方法通常用于返回执行查询后的结果集。语法是这样的:PDOStatement PDO::query(string sql);
参数sql就很容易理解了,就是要执行的sql语句。
2.prepare()方法和execute()方法
prepare()是预处理语句的其中一个方法,通常来做查询的准备工作,然后,execute()来执行查询。
以上就简单介绍这三种情况。
二、PDO如何获取结果集
pdo获取结果集有三种方法,分别是fetch()、fetchAll()和fetchColumn()方法。
首先,你先在数据库里面建一个表,命名为t_user。
CREATE TABLE `t_user` (
`userid` int(11) NOT NULL,
`username` varchar(25) DEFAULT NULL,
`usersex` varchar(6) DEFAULT NULL,
`userage` int(6) DEFAULT NULL,
PRIMARY KEY (`userid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
然后,插入数据,很简单,如下:
INSERT INTO `t_user` VALUES ('1', 'li', 'boy', '23');
INSERT INTO `t_user` VALUES ('2', 'nadia', 'gril', '20');
INSERT INTO `t_user` VALUES ('3', 'wang', 'boy', '55');
下面就简单介绍一下每个方法是如何使用的。
1.fetch()方法
fecth()方法是获取结果集的下一行数据。
表一:fetch_style控制结果集返回方式的可选值
| PDO::FETCH_ASSOC | 关联数组形式。 |
| PDO::FETCH_NUM | 数字索引数组形式。 |
| PDO::FETCH_BOTH | 两者数组形式都有,这是默认的。 |
| PDO::FETCH_OBJ | 按照对象的形式,类似于以前的mysql_fetch_object()函数。 |
| PDO::FETCH_BOUND | 以布尔值的形式返回结果,同时将获取的列值赋给bindParam()方法中指定的变量。 |
| PDO::FETCH_LAZY | 以关联数组、数字索引数组和对象3种形式返回结果。 |
ftech()方法的具体代码如下所示:
<table border='1'>
<?php
$dbms = 'mysql';//选择mysql数据库
$host = '127.0.0.1';//数据库主机名
$dbName = 'dbtext';//使用的数据库
$user = "";//数据库连接用户名
$pwd = "";//数据库连接密码
$dsn = "$dbms:host=$host;dbname=$dbName";
try {
$pdo = new PDO($dsn, $user, $pwd);//初始化一个PDO对象,创建数据库连接对象$pdo
$query = "select * from t_user";
$result = $pdo->prepare($query);
$result->execute();
while ($res=$result->fetch(PDO::FETCH_ASSOC)){?>
<tr>
<td><?php echo $res['userid'];?></td>
<td><?php echo $res['username'];?></td>
<td><?php echo $res['userage'];?></td>
<td><?php echo $res['usersex'];?></td>
</tr>
<?php }
}catch (Exception $e){
die("error!!!".$e->getMessage()."<br>");
}
?>
</table>
结果如下图1:

图1
2.fetchAll()方法
从单词上可以看的很清楚,fetchAll()方法是为了获取结果集的所有行。
PHP PDO获取结果集的更多相关文章
- PDO中获取结果集
fetch()方法 fetch()方法用于获取结果集的下一行.语法例如以下: mixed PDOStatement::fetch([int fetch_style][,int cursor_orien ...
- java 通过调用存储过程获取结果集
一般在java中,数据查询是通过Statement, PreparedStatement获取结果集,今天向大家介绍通过CallableStatement调用存储过程,从而获取结果集. 本 ...
- PDO获取数据的方法fetch()、fetchAll()、setFetchMode()、bindColumn()
PDO的数据获取方法与其他数据库扩展都非常类似,只要成功执行SELECT查询,都会有结果集对象产生.不管是使用PDO对象中的query()方法,还是使用prepare()和execute()等方法结合 ...
- 关于PDO取得结果集的数据类型为string的问题
很久没写些什么了, 正好今天工作中遇到了以前在意过的问题. 之前曾注意到过,php从数据库中取得的结果集后,其中的字段全都会变成string类型.今儿通过ajax调取数据, 有一个type字段是int ...
- 【K8S学习笔记】Part2:获取K8S集群中运行的所有容器镜像
本文将介绍如何使用kubectl列举K8S集群中运行的Pod内的容器镜像. 注意:本文针对K8S的版本号为v1.9,其他版本可能会有少许不同. 0x00 准备工作 需要有一个K8S集群,并且配置好了k ...
- 10.1(java学习笔记)JDBC基本操作(连接,执行SQL语句,获取结果集)
一.JDBC JDBC的全称是java database connection java数据库连接. 在java中需要对数据库进行一系列的操作,这时就需要使用JDBC. sun公司制定了关于数据库操作 ...
- client-go获取k8s集群内部连接,实现deployment的增删改查
一开始写了一个client-java版本的,但是java放在k8s集群上跑需要装jvm而且java的包比较大,client-go版本更适合主机端,下面是整个实现 说明:k8s官方维护的客户端库只有go ...
- php pdo 获取数据转换为json
php 查询语句获取数据,数据库有好多表现形式,如何拿出自己需要的数据 $raceSQL ='select id, race_name,race_code,content from je_race ' ...
- JDBC的使用(二):PreparedStatement接口;ResultSet接口(获取结果集);例题:SQL注入
ResultSet接口:类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集. getInt(), getFloat(), getDate(), getBoolean(), getString( ...
随机推荐
- Lua table使用
days = {"Sunday", "Monday", "Tuesday", "Wednesday", "Th ...
- GroupLayout 布局
文档说明: 以下引自:Java™ PlatformStandard Ed. 7 public class GroupLayout extends Object implements LayoutMan ...
- 1710: [Usaco2007 Open]Cheappal 廉价回文
Description 为 了跟踪所有的牛,农夫JOHN在农场上装了一套自动系统. 他给了每一个头牛一个电子牌号 当牛走过这个系统时,牛的名字将被自动读入. 每一头牛的电子名字是一个长度为M (1 & ...
- ubuntu下新建VPN连接
1. 安装VPN Client#sudo apt-get install pptp-linux2. 安装网络管理器对VPN的支持#sudo apt-get install network-manage ...
- 【数学规律】Vijos P1582 笨笨的L阵游戏
题目链接: https://vijos.org/p/1582 题目大意: 就是o(o<=50)个人在n*m(n,m<=2000)的格子上放L型的东西(有点像俄罗斯方块的L,可对称旋转),问 ...
- oracle 表查询(2)
使用逻辑操作符号 问题:查询工资高于500 或者是岗位为MANAGER 的雇员,同时还要满足他们的姓名首字母为大写的J? or job = 'MANAGER') and ename LIKE 'J%' ...
- HDOJ(HDU) 2178 猜数字(题意有点难理解、、、)
Problem Description A有1数m,B来猜.B每猜一次,A就说"太大","太小"或"对了" . 问B猜n次可以猜到的最大数. ...
- 从SG函数浅谈解决博弈问题的通法
基于笔者之前对于几种二元零和博弈游戏的介绍,这里将其思想进行简单的提炼,并引出解决这类二元零和博弈游戏的强大工具——SG函数. 其实对于博弈游戏如Bash.Nim等基本类型,异或一些比较高级的棋类游戏 ...
- poj 3084 最小割
题目链接:http://poj.org/problem?id=3084 本题主要在构图上,我采用的是把要保护的房间与源点相连,有intruder的与汇点相连,相对麻烦. #include <cs ...
- Spring 3.x企业应用开发实战(9-1)----依赖注入
Spring中的依赖注入方式:属性注入.构造函数注入和工厂方式注入. 1.属性注入 属性注入即通过setXxx()方法注入Bean的属性值或依赖对象. 属性注入要求Bean提供一个默认的构造函数,在J ...