PDOStatement
本章节列出截至PHP 7.3.6
所有的PDOStatment
类函数以供参考。
PDOStatement
是预处理语句类。下表以相关性排序。
函数名 | 描述 |
---|---|
getAttribute() | 检索一个 PDO 语句的数据库驱动特定属性(通用属性不包括在内) |
setAttribute() | 为 PDO 语句类设置一个数据库驱动特定属性(通用属性不包括在内) |
setFetchMode() | 为 PDO 语句设置默认的获取结果集模式 |
getColumnMeta() | 返回 PDO 结果集中某一列的元数据的关联数组 |
bindColumn() | 将指定列的值绑定到一个变量 |
bindParam() | 将一个变量名绑定到预处理 SQL 语句的指定参数的占位符 |
bindValue() | 将一个值绑定到预处理 SQL 语句的指定参数的占位符 |
closeCursor() | 关闭正在移动的游标,使得语句能够被再次执行 |
execute() | 执行一条预处理语句 |
fetch() | 从PDOStatement 结果集中获取下一行 |
fetchAll() | 与PDOStatement::fetch() 方法不同,返回结果集中剩余的所有行 |
fetchColumn() | 从结果集的下一行获取指定列值 |
fetchObject() | 获取PDOStatement 结果集中下一行的数据,并将其作为一个对象返回 |
nextRowset() | 在一个具有多个PDOStatement 结果集的数据库句柄中,向下推进至下一个结果集 |
rowCount() | 返回数据库受上一个 SQL 语句影响的行数 |
columnCount() | 返回PDOStatement 结果集中的列数 |
debugDumpParams() | 直接输出一条关于 SQL 预处理语句包含的信息 |
errorCode() | 获取数据库上一次操作的错误码 |
errorInfo() | 返回数据库上一次操作的错误信息数组 |
本参考手册的格式说明:
- 函数名
- 定义
- 语法
- 函数名
- 参数列表:参数列表中,变量名前是该变量的数据类型,其中特殊的
mixed
表示有多种可能的数据类型;使用方括号包裹的参数表示可选 - 返回类型:冒号后面是函数的标准返回类型
- 参数说明
- 示例
- 延展阅读
- 与当前函数具有相关性、相似性的函数
注:本章节示例依赖数据库与服务器环境,请先根据之前的环境搭建教程搭建好自己的环境!
前期准备
-
数据库配置
- 本教程所涉及数据库驱动一律为 MySQL 5.7+
- MySQL 用户名:
root
- MySQL 密码:
mysql
- 使用数据库:
test
-
涉及数据表(如果没有可运行下列 SQL 语句):
movie
CREATE TABLE `movie` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '豆瓣高分电影', `name` varchar(60) COLLATE utf8mb4_bin NOT NULL COMMENT '电影名称', `rate` float(2,1) unsigned NOT NULL DEFAULT '0.0' COMMENT '豆瓣评分', `url` varchar(150) COLLATE utf8mb4_bin NOT NULL DEFAULT '' COMMENT '电影豆瓣网址', `cover` varchar(255) COLLATE utf8mb4_bin NOT NULL DEFAULT '' COMMENT '封面图片', `cover_x` int(255) unsigned NOT NULL DEFAULT '0' COMMENT '封面横向尺寸', `cover_y` int(255) unsigned NOT NULL DEFAULT '0' COMMENT '封面纵向尺寸', PRIMARY KEY (`id`), KEY `i_name` (`name`), KEY `i_rate` (`rate`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='电影'; INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (1, '哪吒之魔童降世', 8.5, 'https://movie.douban.com/subject/26794435/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2563780504.jpg', 5594, 8268); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (2, '我不是药神', 9.0, 'https://movie.douban.com/subject/26752088/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2561305376.jpg', 2810, 3937); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (3, '续命之徒:绝命毒师电影', 8.3, 'https://movie.douban.com/subject/30372377/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2569548689.jpg', 1500, 2222); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (4, '肖申克的救赎', 9.7, 'https://movie.douban.com/subject/1292052/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p480747492.jpg', 2000, 2963); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (5, '这个杀手不太冷', 9.4, 'https://movie.douban.com/subject/1295644/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p511118051.jpg', 658, 980); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (6, '绿皮书', 8.9, 'https://movie.douban.com/subject/27060077/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2549177902.jpg', 2000, 3167); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (7, '摔跤吧!爸爸', 9.0, 'https://movie.douban.com/subject/26387939/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2457983084.jpg', 4500, 6300); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (8, '千与千寻', 9.3, 'https://movie.douban.com/subject/1291561/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2557573348.jpg', 1080, 1560); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (9, '疯狂动物城', 9.2, 'https://movie.douban.com/subject/25662329/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2315672647.jpg', 1418, 2005); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (10, '泰坦尼克号', 9.4, 'https://movie.douban.com/subject/1292722/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p457760035.jpg', 2015, 3000); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (11, '阿甘正传', 9.5, 'https://movie.douban.com/subject/1292720/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2559011361.jpg', 2445, 3229); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (12, '霸王别姬', 9.6, 'https://movie.douban.com/subject/1291546/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2561716440.jpg', 600, 889); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (13, '寻梦环游记', 9.0, 'https://movie.douban.com/subject/20495023/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2503997609.jpg', 1432, 2048); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (14, '复仇者联盟4:终局之战', 8.5, 'https://movie.douban.com/subject/26100958/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2552058346.jpg', 3000, 4440); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (15, '复仇者联盟3:无限战争', 8.1, 'https://movie.douban.com/subject/24773958/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2517753454.jpg', 1968, 2756); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (16, '头号玩家', 8.7, 'https://movie.douban.com/subject/4920389/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2516578307.jpg', 2000, 3000); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (17, '无名之辈', 8.1, 'https://movie.douban.com/subject/27110296/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2539661066.jpg', 1429, 2000); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (18, '盗梦空间', 9.3, 'https://movie.douban.com/subject/3541415/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p513344864.jpg', 2229, 3300); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (19, '你的名字。', 8.4, 'https://movie.douban.com/subject/26683290/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2395733377.jpg', 1428, 2000); INSERT INTO `movie`(`id`, `name`, `rate`, `url`, `cover`, `cover_x`, `cover_y`) VALUES (20, '三傻大闹宝莱坞', 9.2, 'https://movie.douban.com/subject/3793023/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p579729551.jpg', 3030, 4364);