描述:
预处理语句prepare是pdo提供的一种db操作方式。其语言逻辑与正常的pdo访问相同。但区别于在prepare语句允许用户在【设置sql语句】与【执行sql语句】之间部分进行参数的注入与提取操作,而不是像正常的pdo访问一样直接将参数写死。
(1)prepare()方法和execute()方法
(2)bindValue()方法
(3)bindColumn()方法
正常pdo直接访问:设置sql语句→执行sql语句
预处理访问:设置sql语句→预处理sql语句→处理sql语句中参数→执行sql语句
prepare()方法和execute()方法
prepare()方法为预处理sql语句的方法,能够让pdo预先处理【半成品的】sql语句。并生成一个PDOStatementObject类型的结果。
execute()方法是提供给PDOSO类型对象去执行的【成品】sql语句的方法,并生成一个PDOStatementObject类型的结果。
说明:
交由pdo去prepare预处理的【半成品】sql语句,使用?问号作为占位符,表示待传参的参数。
prepare预处理必须只能处理【半成品】sql语句,如果是完整则需要使用exec方法执行并且会将结果存放到PDOSO对象中。
PDOSO对象在预处理的不同阶段有着不同的含义。
语法:
$sql = “insert info friendslist values(?,?,?)”;
$pdoso = $pdo->prepare( $sql);
echo $pdoso->execute(array(“我是美女”,“female”,99,123456789));
bindColumn()方法
允许将执行结果的一列数据绑定到一个指定对象上,本方法需要在execute()方法执行结束后在执行。
语法: $pdoso->bindColumn(index,指定变量);
说明:
1:第一个参数表示结果中的第几列数据。第一列就写1,以此类推。
2:第二个参数表示数据要赋值给那个变量,随便一个变量即可。
3:bindColumn()方法一次绑定一列给一个变量,如果绑定多个,则执行多次即可。
例子:
$sql = “select * from friendslist”;
$pdoso = $pdo-> prepare( $sql);
$pdoso -> execute();
$pdoso -> bindColumn(1, $friendsName);
$pdoso -> bindColumn(2, $friendsSex);
while( $row = $pdoso->fetch(PDO::FETCH_COLUMN)){
echo “{ $friendsName}”."----"."{ $friendsSex}"."< br/>";
}
bindValue()方法
bindValue()方法是提供给pdo预处理之后得到的PDOSO对象使用的方法,用来给【半成品】的sql语句进行传值。
语法:
$pdoso->bindValue(index,value);
说明:
1:第一个参数表示给sql语句中第几个参数传值,第一个就写1,以此类推。
2:第二个参数表示给sql语句中的对应参数传的具体的值。
3:bindValue一次绑定一个参数,如果有多个需要调用多次。
例子:
$sql = “insert into friendslist values(?,?,?,?)”;
$pdoso = $pdo -> prepare( $sql);
$pdoso-> bindValue(1,‘我是美女’);
$pdoso->bindValue(2,‘female’);
$pdoso->bindValue(3,666);
$pdoso->bindValue(4,1234567);
echo $pdoso->execute();

PDO预处理prepare相关推荐

  1. prepare的用法 php,PHP中的操作mysqli的预处理prepare

    这篇文章主要介绍了关于PHP中的操作mysqli的预处理prepare ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 PHP中的操作mysqli的预处理prepare 1.[PHP错 ...

  2. php pdo 关闭,php pdo预处理

    什么是预处理语句? 可以把它看作是想要运行的 SQL 的一种编译过的模板,它可以使用变量参数进行定制. 预处理语句可以带来两大好处: 查询仅需解析(或预处理)一次,但可以用相同或不同的参数执行多次.当 ...

  3. PDO预处理防御SQL注入

    PDO可以被认作是一种通过编译SQL语句模板来运行SQL语句的机制. 查询仅需解析(或预处理)一次,但可以用相同或不同的参数执行多次.当查询准备好后,数据库将分析.编译和优化执行该查询的计划.对于复杂 ...

  4. c mysql prepared,Mysql 预处理 PREPARE以及预处理的好处

    PREPARE stmt1 FROM 'SELECT SQRT(POW(?,2) + POW(?,2)) AS hypotenuse'; mysql> SET @a = 3; mysql> ...

  5. mysql pdo prepare_PDO::prepare

    PDO::prepare PDO::prepare - 准备要执行的SQL语句并返回一个 PDOStatement 对象(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0 ...

  6. php pdo 预处理删除,PHP PDO扩展整理,包括环境配置\基本增删改查\事务\预处理

    介绍 PDO是一种PHP程序连接数据库的接口,通过PDO可以将PHP程序与数据库联系起来. 优点: 1.可移植性,可以支持各种主流数据库服务,而且实现代码几乎都是相同的,使用PDO在代码层面上不需要太 ...

  7. php pdo mysql 预处理_php -- PDO预处理

    可以使用多种方式实现预处理:指的是在绑定数据进行执行的时候,可以有多种方式. 预处理语句中为变量 使用数组指定预处理变量 1.准备预处理语句(发送给服务器,让服务器准备预处理语句) PDOStatem ...

  8. PHP基础知识之————PDO预处理语句

    转载处:http://www.cnblogs.com/xiaohuochai/p/6133353.html 定义 在生成网页时,许多PHP脚本通常都会执行除参数之外,其他部分完全相同的查询语句,针对这 ...

  9. php pdo预处理语句与存储过程

    很多更成熟的数据库都支持预处理语句的概念.什么是预处理语句?可以把它看作是想要运行的 SQL 的一种编译过的模板,它可以使用变量参数进行定制.预处理语句可以带来两大好处: 1.查询仅需解析(或预处理) ...

最新文章

  1. 4.5.2 OSPF协议与链路状态算法
  2. git 改了一段代码不想要了_初识Git
  3. SPGridview的使用
  4. java二级考试大纲_计算机二级Java考试内容大纲
  5. raid卷的作用_硬盘raid功能是什么意思,有何作用
  6. ImportError: Unable to import required dependencies: pytz: No module named ‘pytz‘
  7. openwrt问题汇总
  8. POSCMS 框架使用导航
  9. Axure与markman
  10. -1岁的产品经理日记——part3(面经篇)
  11. 线性代数-克莱姆法则
  12. react脚手架创建命令教程
  13. 联想y700台式计算机图片,细论联想Y700台式机的自我修养
  14. 进程的状态和转换 三态模型和五态模型
  15. WPS如何双面打印文件呢
  16. 团体程序设计天梯赛-练习集(并查集)
  17. 第一型曲线积分的思路总结
  18. ERROR: Cannot find command ‘git‘ - do you have ‘git‘ installed and in your PATH?
  19. 地名用计算机符号怎么表示,写作文地名要加什么符号
  20. C语言游戏3:飞机游戏

热门文章

  1. Python 学习:浮点数
  2. 直方图规定化——GML和SML映射规则
  3. 剑指高效编程之工具类
  4. 内网穿透透透透的解决方案
  5. Excel 样式相关设置
  6. 搭建本地CRM开发环境
  7. Docker 搭建的大数据环境
  8. vs code创建项目教程
  9. 【赏金赛项目】实现过程
  10. matlab制作GIF动图