PDO连接数据库

技术PDO连接数据库 PDO连接数据库上一篇文章为您介绍了“PHP数据库如何使用PDO连接数据库”在PHP中,为您详细地介绍了如何通过PDO连接数据库,这篇文章让您继续了解PHP中如何使用PDO执行SQ

PDO连接数据库。

上一篇文章向您介绍了“PHP数据库如何使用PDO连接到数据库”。在PHP中,它详细介绍了如何通过PDO连接到数据库。本文让您继续了解如何使用PDO在PHP中执行SQL语句。希望能帮到你!

在前面的文章中,我们学习了PHP如何通过PDO连接到数据库,以及如何仅通过执行SQL语句来连接到数据库。对于PDO,有三种方法可以执行SQL语句:exec()、query(),以及prepare()和execute()。那我们一起来看看。

Exec()方法。

当执行这些SQL语句时,例如INSERT、UPDATE和DELETE,我们可以在PDO对象中使用exec()方法,在PDO对象中使用exec()。成功执行此方法后,返回的结果是受影响的行数。

exec()方法的语法如下:

一个

PDO:exec(字符串$sql)。

特别说明:

为sql语句执行$sql。

exec()方法没有从SELECT查询语句中获得相应的结果。

接下来,我们尝试通过一个示例向数据库添加一段数据,如下所示:

$ DSN=' MySQL : host=127 . 0 . 0 . 1;dbname=test ';

$ user=' root

$ pwd=' root

尝试{

$pdo=newPDO($dsn,$ user);

$ SQL='插入用户(姓名、年龄、性别)值(' values ',' 21 ',' male ')';

$ RES=$ PDO-exec($ SQL);

If($res)echo“已成功添加”。$ res数据片段!’;

}捕获(PDOException $ e){ 0

Echo数据库连接失败:“”。$ e-get message();

}

输出结果:

从上面的例子中,我们可以看到我们已经通过exec()方法成功地向数据库中添加了一段数据,返回的结果是受影响的行数。如果要返回对象,可以使用query()方法。让我们看看执行SQL语句的另一种方法:query()方法。

query()方法。

通过exec()方法,在上述情况下可以返回不需要返回结果集的语句信息,而在执行SELECT查询语句时,我们需要传递query()语句。如果这种方法成功实施,叛离的国家就是PDOStatement的对象。

如果使用query()方法并想知道总行数,可以使用rowCount()方法获取PDOStatement对象。

该方法的语法格式如下(查询):

PDO:查询(字符串$sql)。

PDO:query(字符串$sql,int$PDO:FETCH_COLUMN)

字符串$sql,int$PDO:FETCH_CLASS,字符串$classname,数组$ctorargs)

PDO:query(字符串$sql,int$PDO:FETCH_INTO)

这些预防措施包括:

$sql是要执行的sql语句;其余参数用于设置语句的默认提取模式,这与调用结果对象pdostatem:3360set fetchmode()相同。

然后,我们将使用query()方法查询之前添加的数据,如下所示:

$ DSN=' MySQL : host=127 . 0 . 0 . 1;dbname=test ';

$ user=' root

$ pwd=' root

尝试{

$pdo=newPDO($dsn,$ user);

$ SQL=' select * frommuserwherename='逐一';

$res=$pdo-query($sql,PDO : fetch _ ASSOC);

print _ r($ RES);

}捕获(PDOException $ e){ 0

Echo数据库连接失败:“”。$ e-get message();

}

输出结果:

在这些方法中,使用query()和exec()有一些注意点:

Query()和exec()可以执行所有SQL语句,并且只返回不同的值。

Query()可以完成exec()的所有功能;

将select语句应用于exec()时,它总是返回0;

要查看特定的查询结果,可以使用foreach语句进行循环输出。

准备()和执行()方法。

预处理语句的方法可以使实现更加高效,这是需要迭代不同参数的时候。如果在pdostating对象中使用execute()方法,请在pdostating对象中使用execute()方法准备要执行的查询。然后,我们将看到prepare()和execute()方法。

prepare()方法具有以下语法格式:

一个

prepare(string $语句[,array$driver_options=array)

这些预防措施包括:

$语句意味着它必须是目标数据库的有效SQL语句模板;

$driver_options表示为可选参数,它是包含一个或多个键值对的数组类型,并设置返回的PDOStatement对象的属性。

execute()方法具有以下语法格式:

一个

PDOStatement:执行(array $ input _ parameters)。

这些预防措施包括:

$input_parameters在要执行的SQL语句中,只有一个元素具有与SQL语句中绑定的参数相同的编号。

一个SQL语句模板可以包含零个或多个占位符标记,这些标记的格式可以是名称(:name)或问号(),在执行时将被实际数据替换。

在同一个SQL语句中,不能同时使用命名和问号形式,只能选择其中一种参数形式。如果它是以占位符标签命名的,则标签名称必须是唯一的。

接下来,让我们看看如何使用命名参数占位符来查询指定的SQL语句,如下所示:

一个

$ DSN=' MySQL : host=127 . 0 . 0 . 1;dbname=test ';

$ user=' root

$ pwd=' root

尝试{

$pdo=newPDO($dsn,$ user);

$sql='SELECTname,age,SexFromUserHayage=: age ';

$ sth=$ PDO prepare($ SQL);

$ sth-execute([' : age '=11]);

$ res1=$ sth-fetchAll();

$ sth-execute(array(' : age '=14));

$ res2=$ sth-fetchAll();

“回声”

print _ r($ res1);

print _ r($ res2);

}捕获(PDOException $ e){ 0

Echo数据库连接失败:“”。$ e-get message();

}

输出结果:

上面的示例使用参数占位符的命名形式来查询指定的SQL语句。接下来,让我们看看如何使用问号形式的参数占位符来查询指定的SQL语句。

例子如下:

$ DSN=' MySQL : host=127 . 0 . 0 . 1;dbname=test ';

$ user=' root

$ pwd=' root

尝试{

$pdo=newPDO($dsn,$ user);

$sql='SELECTname,age,SexFromUserWheage=AnDex=';

$某物=

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/53739.html

(0)

相关推荐

  • 支付宝申请商家二维码,实体店支付宝二维码怎么开通

    技术支付宝申请商家二维码,实体店支付宝二维码怎么开通题主您好支付宝申请商家二维码。很高兴回答您的问题。您可能是要问实体店怎么开通支付宝收钱码吧?现在开通支付宝的收钱码非常简单(实名制用户都可以申请开通收钱码),而且还是免

    生活 2021年10月24日
  • 树莓派如何定时通过摄像头上传图片

    技术树莓派如何定时通过摄像头上传图片这篇文章将为大家详细讲解有关树莓派如何定时通过摄像头上传图片,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、安装抓图软件fswebcamsudo

    攻略 2021年11月20日
  • SQL中序列的用法示例

    技术SQL中序列的用法示例小编给大家分享一下SQL中序列的用法示例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、语法 create

    攻略 2021年12月13日
  • JavaScript中的DOM有什么作用

    技术JavaScript中的DOM有什么作用本篇内容介绍了“JavaScript中的DOM有什么作用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大

    攻略 2021年11月20日
  • cpu为什么可以直接访问内存(cpu是如何访问内存的)

    技术CPU是如何访问内存的这期内容当中小编将会给大家带来有关CPU是如何访问内存的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。内存管理可以说是一个比较难学的模块,之所以比较难学。一是

    攻略 2021年12月21日
  • 怎么解析与优化MySQL 8.0 PFS histogram

    技术怎么解析与优化MySQL 8.0 PFS histogram这篇文章主要介绍“怎么解析与优化MySQL 8.0 PFS histogram”,在日常操作中,相信很多人在怎么解析与优化MySQL 8.0 PFS his

    攻略 2021年10月28日