Questions tagged «pdo»

PDO(PHP数据对象)是PHP的数据访问抽象层(接口)。它适用于大多数数据库系统。

6
如何正确使用PDO对象进行参数化SELECT查询
我已经尝试按照PHP.net说明进行SELECT查询,但是我不确定执行此操作的最佳方法。 SELECT如果可能,我想使用参数化查询来返回ID表中name字段与参数匹配的表。这应该返回一个,ID因为它将是唯一的。 然后,我想将其ID用于INSERT另一个表,因此我需要确定它是否成功。 我还读到您可以准备查询以供重用,但是我不确定这有什么帮助。
85 php  mysql  select  pdo 

2
PHP + PDO + MySQL:如何从MySQL返回整数和数字列作为PHP中的整数和数字?
我已经在Stack Overflow上重复了几次这个问题,但是没有一个人充分探讨这个问题(或者至少以对我有帮助的方式) 问题在于,数据库查询应在PHP中为整数列返回整数数据类型。而是查询将每一列作为字符串类型返回。 我已经确保“ PDO :: ATTR_STRINGIFY_FETCHES”为false只是为了确保结果不会被强制转换为字符串。 我见过的答案: 做不到 不,它可以在安装了PHP / MySQL的Mac OS X上运行 在您的代码中键入强制转换所有值 不,我不会那样做 不用担心,PHP是松散类型的 我的数据以JSON格式输出,并由许多其他服务使用,其中一些服务要求数据格式正确 从我的研究中,我知道这是驱动程序实施的问题。 许多消息来源声称MySQL本机驱动程序不支持返回数字类型。这似乎并不正确,因为它可以在Mac OS X上运行。除非他们的意思是说“ Linux上的MySQL本机驱动程序不支持该功能”。 这意味着我在Mac OS X上安装的驱动程序/环境有一些特殊之处。我一直在尝试找出差异以便应用修复程序,但是我对如何检查这些问题的知识感到受限制。 区别: OS X上的PHP是通过Home Brew编译并安装的 通过“ apt-get install php5-dev”在Ubuntu上安装PHP OS X上的PHP正在连接到也在OS X上运行的MySQL服务器 服务器版本:5.1.71-log源分发 Ubuntu上的PHP正在连接到Rackspace云数据库 服务器版本:5.1.66-0 + squeeze1(Debian) Ubuntu环境 版本:10.04.1 PHP 5.4.21-1 + debphp.org〜lucid + 1(cli)(建立:2013年10月21日08:14:37) …
85 php  mysql  macos  ubuntu  pdo 

8
PHP-将PDO与IN子句数组一起使用
我正在使用PDO执行一条语句,该语句的IN子句使用数组作为其值: $in_array = array(1, 2, 3); $in_values = implode(',', $in_array); $my_result = $wbdb->prepare("SELECT * FROM my_table WHERE my_value IN (".$in_values.")"); $my_result->execute(); $my_results = $my_result->fetchAll(); 上面的代码工作得很好,但是我的问题是为什么不能: $in_array = array(1, 2, 3); $in_values = implode(',', $in_array); $my_result = $wbdb->prepare("SELECT * FROM my_table WHERE my_value IN (:in_values)"); $my_result->execute(array(':in_values' => $in_values)); $my_results = $my_result->fetchAll(); …

4
PDO :: PARAM用于十进制类型?
我有2个数据库字段 `decval` decimal(5,2) `intval` int(3) 我有2个pdo查询可以更新它们。更新int的一个可以正常工作 $update_intval->bindParam(':intval', $intval, PDO::PARAM_INT); 但我无法更新小数点字段。我已经尝试了以下3种方法,但没有任何效果 $update_decval->bindParam(':decval', $decval, PDO::PARAM_STR); $update_decval->bindParam(':decval', $decval, PDO::PARAM_INT); $update_decval->bindParam(':decval', $decval); 看来问题出在数据库类型上decimal?是否有一个PDO::PARAM用于类型的字段decimal?如果没有,我该如何解决?
77 php  mysql  database  pdo 

6
PDO :: PARAM日期?
有一些 PDO::PARAM_???存在可用于日期或时间戳的内容? 样例代码: $sql = "UPDATE my_table SET current_date = :date WHERE id = 43"; $statement = $pdo->prepare ($sql); $statement->bindValue (":date", strtotime (date ("Y-m-d H:i:s")), PDO::PARAM_STR); $statement->execute ();
74 php  mysql  date  types  pdo 

5
如何在PDO PHP中查看查询错误
try { $db = new PDO("mysql:host=".HOST.";dbname=".DB, USER, PW); $st = $db->prepare("SELECT * FROM c6ode"); } catch (PDOException $e){ echo $e->getMessage(); } 在上述情况下,如何检查查询的mysql错误?
73 php  mysql  pdo 

2
可以设置默认的PDO提取模式吗?
在检索数据之前,我总是必须输入: $STH->setFetchMode(PDO::FETCH_OBJ); 为了使我的代码更具可读性,如果我可以在某处设置默认模式,那将很棒。 谢谢! 编辑。我本来希望可以将PDO:FETCH_OBJ添加到我连接到数据库时运行的setAttribute代码中,但这似乎不起作用...
73 php  pdo 

7
PDO :: fetchAll与PDO :: fetch在循环中
只是一个简单的问题。 在循环中使用PDO :: fetchAll()和PDO :: fetch()之间是否有性能差异(对于大型结果集)? 我正在获取用户定义类的对象,如果有什么不同的话。 我最初的未经教育的假设是fetchAll可能会更快,因为PDO可以在一条语句中执行多个操作,而mysql_query只能执行一条。但是,我对PDO的内部工作原理知之甚少,文档也没有对此进行任何说明,以及fetchAll()是否只是转储到数组中的PHP端循环。 有什么帮助吗?
73 php  mysql  pdo  fetch 

4
是否有关于如何使用PDO的好的教程?[关闭]
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 也许有人编写了一个显示重要内容的教程:设置所有内容并将其与MySQL一起使用?
68 php  pdo 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.