问题标签 [pdostatement]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
17 回答
120685 浏览

php - 从 PDO 准备好的语句中获取原始 SQL 查询字符串

有没有办法在准备好的语句上调用 PDOStatement::execute() 时执行原始 SQL 字符串?出于调试目的,这将非常有用。

0 投票
1 回答
17600 浏览

php - PDOStatement::bindParam data_type 参数列表

是否有描述您可以使用的所有 data_type 参数的列表PDOStatement::bindParam()?如果没有,您通常使用什么,以及用于什么类型的字段?

根据 PHP 手册:data_type使用 PDO::PARAM_* 常量的参数的显式数据类型。

我知道PDO::PARAM_INTand PDO::PARAM_STR。我听说过,PDO::PARAM_LOB但我不确定如何以及何时使用它。(日期?)

0 投票
5 回答
15930 浏览

php - PHP PDOStatement:获取一行,作为数组的键的第一列

PDOStatement用来查询数据库。每当我得到一个返回的行时,我希望它被提取到一个数组中,以$row[0]作为键,并将行中的后续元素作为值。

当然,我可以编写foreach循环和if条件的组合来完成这项工作,如下所示:

但我正在寻找一种现有的方法;有没有这样的方法已经存在?

为什么重新打开这个问题。

这里要问的显然是 PDO::FETCH_GROUP|PDO::FETCH_ASSOC 的组合。PDO::FETCH_KEY_PAIR 仅适用于 2 列结果。但是这里的示例是一个 2 列结果,仅用于简化问题中的代码,而不适用于所有情况。

0 投票
1 回答
922 浏览

php - PHP:如何将对象转换为继承的类?

我想继承 PDOStatement 类并在我的网站脚本中使用它。

但我很沮丧如何获得所需的对象。PDO::query 仅返回直接 PDOStatement 对象,看起来没有其他方法可以创建 PDOStatement 对象或继承的类。

最初我想将 PDOStatement 对象移动到继承类的构造函数中是这样的:

但是如何使 PDOStatement 的实例成为继承对象(Messaging_Collection)。对我来说这是一个很大的问题。

0 投票
2 回答
299 浏览

php - php PDOStatement fetchAll 第二次

我不太了解 PDOStatement 的意义,因为:

是否需要传递一个参数,以便第二次 fetchAll 返回数据,但无需再次执行 SQL?

0 投票
1 回答
305 浏览

pdostatement - 使用 PDOStatement 的优势?

使用 PDOStatement 而不是常规 Mysql 有什么区别/优势?

0 投票
1 回答
1215 浏览

php - 警告:PDOStatement::execute() [pdostatement.execute]: SQLSTATE[23000]:

有人可以帮忙吗?

警告:PDOStatement::execute() [pdostatement.execute]: SQLSTATE[23000]: 完整性约束违规:1062 /usr/www/users/firstiw/competitions/facebook/64ongordon/competition 中键 1 的重复条目“127”。第 33 行的 php

0 投票
3 回答
4769 浏览

php - 如何在 PDOStatement::bindValue() 中定义变量类型?

PDOStatement::bindValue()方法提供了一种指定绑定变量类型的方法:

PDOStatement::bindValue ( $parameter , $value [, $data_type = PDO::PARAM_STR ] )

我想知道,指定数据类型的目的是什么,而当保留为默认值 ( PARAM_STR) 时,最终数据库会在使用它之前将值转换为正确的类型?

例如,如果您对某个INTEGER字段进行以下查询:

而你在 PHP 中绑定一个整数,PDO 默认将其绑定为一个字符串,相当于:

这将完美无缺,因为 SQL 数据库(至少是 MySQL,我真的不知道这将如何在其他 RDBMS 上工作)知道如何在使用之前将字符串转换回整数。

在哪些用例中,绑定类型参数与字符串会有所不同?

0 投票
3 回答
3638 浏览

php - 如何遍历 PDOStatement 对象,即先获取、上一个、下一个等?

我试图在网页中一次又一次地访问数据。有没有更好的办法 ?movetofirst()、movetolast()、movetoprevious()、movetonext() 之类的东西可能会很好。

现在我正在将结果集作为数组检索(使用 fetchall())并一次又一次地重新使用该数组。

有没有像下面这样的事情?我不需要一次又一次地执行查询。如果结果/数组有数百行,则将数据保存在数组中并消耗资源。

0 投票
3 回答
7022 浏览

php - 带有 PDOStatement 的 PDO 重新连接“mysql 服务器消失”错误

当超过 mysql 的 wait_timeout 时,我的 PHP CLI 脚本失去了连接。我无法更改 wait_timeout,那么当我使用 PDOStatement 执行查询时,如何构建一个重新连接的 try/catch 语句?