全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

php使用PDO执行SQL语句的方法分析

本文实例讲述了php使用PDO执行SQL语句的方法。分享给大家供大家参考,具体如下:

exec()方法

exec()方法返回执行后受影响行数,语法如下:

int PDO::exec(string statement)

参数statement是要执行的SQL语句。该方法返回执行查询时受影响的行数,通常情况下用于INSERT,DELETE和UPDATE语句中。

例如:

$dbms='mysql';//数据库类型
$dbName='admin';//使用的数据库
$user='root';//数据库连接用户名
$pwd='password';//数据库连接密码
$host='localhost';//数据库主机名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="insert into user(username,password) values('admin','123456')";//需要执行的sql语句
$res=$pdo->exec($query);//执行添加语句并返回受影响行数
echo "数据添加成功,受影响行数为: ".$res;
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}

运行结果为:

数据添加成功,受影响行数为: 1

query()方法

query()方法用于返回执行查询后的结果集,语法如下

PDOStatement PDO::query(string statement)

参数statement 是要执行的SQL语句。它返回的是一个PDOStatement对象

例如:

$dbms='mysql';
$dbName='admin';
$user='root';
$pwd='905407339';
$host='localhost';
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);
$query="select * from user";
$res=$pdo->query($query);
print_r($res);
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}

运行结果为:

PDOStatement Object ( [queryString] => select * from user )

如果要看查询的具体结果,可以通过foreach语句完成循环输出

例如:

foreach($res as $val){
echo $val['username']."----".$val['password'].'<br>';
}

运行结果为:

107lab----e10adc3949ba59abbe56e057f20f883e
admin----123456

说明:如果要查看foreach的详细用法请查看:https://www./article/68786.htm

query()与exec()

query可以实现所有exec的功能

例如:

$dbms='mysql';//数据库类型
$dbName='admin';//使用的数据库
$user='root';//数据库连接用户名
$pwd='905407339';//数据库连接密码
$host='localhost';//数据库主机名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="insert into user(username,password) values('admin','123456')";//需要执行的sql语句
$res=$pdo->query($query);//执行添加语句并返回受影响行数
echo "数据添加成功,受影响行数为: ".$res->rowCount();
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}

运行结果为:

数据添加成功,受影响行数为: 1

注:

1、query和exec都可以执行所有的sql语句,只是返回值不同而已。
2、query可以实现所有exec的功能。
3、当把select语句应用到 exec 时,总是返回 0

预处理语句----prepare()语句和execute()语句

预处理语句包括prepare()和execute()两种方法。首先,通过prepare()方法做查询准备工作,然后通过execute()方法执行查询,并且还可以通过bindParam()方法来绑定参数给execute()方法,语法如下:

PDOStatement PDO::prepare(string statement[,array driver_options])
bool PDOStatement::execute([array input_parameters])

例如:

在PDO中通过预处理语句prepare()和execute()执行SQL查询语句,并且应用while()语句和fetch()方法完成数据的循环输出

$dbms='mysql';//数据库类型
$dbName='admin';//使用的数据库
$user='root';//数据库连接用户名
$pwd='905407339';//数据库连接密码
$host='localhost';//数据库主机名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
  $pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
  $query="select * from user";//需要执行的sql语句
  $res=$pdo->prepare($query);//准备查询语句
  $res->execute();
  while($result=$res->fetch(PDO::FETCH_ASSOC)){
    echo $result['id']." ".$result['username']." ".$result['password'].'<br>';
  }
}catch(Exception $e){
  die("Error!:".$e->getMessage().'<br>');
}

运行结果为:

1 107lab e10adc3949ba59abbe56e057f20f883e
4 admin 123456
5 admin 123456

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+Oracle数据库程序设计技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# php  # PDO  # 执行  # SQL语句  # Php中用PDO查询Mysql来避免SQL注入风险的方法  # php中mysql连接方式PDO使用详解  # php使用pdo连接并查询sql数据库的方法  # PHP实现PDO的mysql数据库操作类  # pdo中使用参数化查询sql  # php基于PDO实现功能强大的MYSQL封装类实例  # 使用PDO防sql注入的原理分析  # 行数  # 程序设计  # 可以实现  # 的是  # 操作技巧  # 相关内容  # 还可以  # 两种  # 感兴趣  # 可以通过  # 给大家  # 要看  # 准备工作  # 更多关于  # 方法来  # 所述  # 绑定  # 请查看  # 面向对象  # 返回值 


相关文章: 建站之星代理如何优化在线客服效率?  红河网站制作公司,红河事业单位身份证如何上传?  制作门户网站的参考文献在哪,小说网站怎么建立?  网站制作话术技巧,网站推广做的好怎么话术?  如何配置WinSCP新建站点的密钥验证步骤?  如何在云主机快速搭建网站站点?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  家具网站制作软件,家具厂怎么跑业务?  建站VPS能否同时实现高效与安全翻墙?  如何获取免费开源的自助建站系统源码?  如何通过西部数码建站助手快速创建专业网站?  如何通过VPS建站无需域名直接访问?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  jQuery 常见小例汇总  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  如何配置支付宝与微信支付功能?  在线教育网站制作平台,山西立德教育官网?  建站之星后台密码遗忘或太弱?如何重置与强化?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  广州营销型建站服务商推荐:技术优势与SEO优化解析  临沂网站制作企业,临沂第三中学官方网站?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  深圳网站制作的公司有哪些,dido官方网站?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  建站主机与虚拟主机有何区别?如何选择最优方案?  威客平台建站流程解析:高效搭建教程与设计优化方案  网站设计制作企业有哪些,抖音官网主页怎么设置?  建站之星备案流程有哪些注意事项?  建站之星云端配置指南:模板选择与SEO优化一键生成  宝塔建站后网页无法访问如何解决?  建站之星24小时客服电话如何获取?  如何登录建站主机?访问步骤全解析  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  网站代码制作软件有哪些,如何生成自己网站的代码?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  电商网站制作价格怎么算,网上拍卖流程以及规则?  东莞专业制作网站的公司,东莞大学生网的网址是什么?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  建站主机是否属于云主机类型?  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  如何在阿里云域名上完成建站全流程?  建站之星如何通过成品分离优化网站效率?  建站主机选购指南与交易推荐:核心配置解析  c# 服务器GC和工作站GC的区别和设置  C#怎么使用委托和事件 C# delegate与event编程方法  如何彻底删除建站之星生成的Banner? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。