草庐IT

PHP PDO : how does re-preparing a statement affect performance

我正在编写一个半简单的数据库包装器类,并希望有一个可以自动操作的获取方法:它应该只在第一次准备每个不同的语句,然后绑定(bind)并执行查询连续调用。我想主要问题是:如何重新准备相同的MySql语句,PDO会神奇地识别该语句(因此我不必)并停止操作吗?如果不是,我计划通过为每个不同的查询生成一个唯一的键来实现这一点,并将准备好的语句保存在数据库对象的私有(private)数组中——在它的唯一键下。我打算通过以下方式之一获取数组键(我都不喜欢)。按优先顺序:让程序员在调用方法时传递一个额外的、始终相同的参数-类似于basename(__FILE__,".php")的内容。__LINE__

php - 如何将动态构造的 ext/mysql 查询转换为 PDO 准备语句?

我正在将一些使用ext/mysql(mysql_*()函数)的代码转换为PDO和准备好的语句。以前,当我动态构建查询时,我只是通过mysql_real_escape_string()传递我的字符串,然后将它们直接放入我的查询中,但现在我发现我需要在执行查询时将值作为数组传递,或在执行前绑定(bind)变量。如何转换我的旧代码以使用新的数据库驱动程序? 最佳答案 将您的查询从ext/mysql迁移到PDO准备好的语句需要在许多方面采用新方法。在这里,我将介绍一些需要定期执行的常见任务。这绝不是详尽无遗地匹配所有可能的情况,它只是为了演

PHP pdo - 许多连接

我有一个具有多个View的angular.js应用程序,它使用PHP-PDO从MySQL数据库中获取数据。此外,还有一个NodeJS应用程序每30秒获取一次数据。来自同一个MySQL数据库。angular和Node应用程序在Windows服务器上运行。启动iis时,tcp连接数迅速增加超过100个,状态均为“TIME_WAIT”。是否有机会重用连接或减少完全破坏套接字连接的等待时间? 最佳答案 每个请求的连接速度都非常慢。您想要的是使用持久连接和连接池,这样连接就可以从一个请求回收到下一个请求。这会导致更少的连接和更快的响应时间。有

php - Python 中是否有 PHP PDO 的等效项?

我最喜欢的PHP元素是PDO对象。有没有可以与之匹敌的Python库或内置模块? 最佳答案 你看过PythonDatabaseObjects了吗?? 关于php-Python中是否有PHPPDO的等效项?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6041432/

php - 我应该使用 PDO 来清理我的 Sql 查询还是 "mysql_real_escape_string"就足够了?

这个问题在这里已经有了答案:WhyisPDObetterforescapingMySQLqueries/querystringsthanmysql_real_escape_string?(6个答案)关闭2年前。我有一个简单的分类网站...分类信息被插入到MySql表中,我用来清理用户输入的唯一东西是mysql_real_escape_string。这就够了吗?PDO是最好的方式,但实际上只使用mysql_real_escape_string和PDO之间的区别是什么,让我们说这个查询:SELECT*FROMtable_nameWHEREtable_name.classified='$cl

java - Java 中 PHP PDO 的等价物

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。是否有类似PHPPDOforJava的东西?所以我可以在开始时为SQLite开发,然后切换到MySQL或PostgreSQL。更新:不,我没有搜索Java数据库抽象,因为我不知道要搜索什么

PHP Sqlite3(不是 PDO!)交易?

是否可以在PHP中使用带有sqlite3驱动程序的事务(和回滚)?我在这里找不到信息:http://de2.php.net/manual/en/book.sqlite3.php我不想使用PDO...谢谢你的帮助 最佳答案 是的,即使没有PDO,事务和回滚也是可能的。令人惊讶的是,要找到一个解释如何实现这一点的例子是多么困难。必须实际挖掘一些现成的代码才能找到答案。$db=newMyDB("database.db",SQLITE3_OPEN_READWRITE);$db->exec('BEGIN;');$stmt=$db->prepa

php - 如何在 php docker 镜像中启用 pdo_mysql

这个问题在这里已经有了答案:Howtoinstallpdodriverinphpdockerimage?(2个回答)关闭2年前。我有一个基本的Dockerfile,其中包含以下内容:FROMphp:7.1-apacheRUNapt-getupdate&&docker-php-ext-installpdo_mysqlCOPY./var/wwwEXPOSE80我有一个docker-compose.yml文件version:"3"services:app:build:.ports:-"80:80"volumes:-.:/var/wwwdepends_on:-mysqlmysql:image:

php - 如何在 php docker 镜像中启用 pdo_mysql

这个问题在这里已经有了答案:Howtoinstallpdodriverinphpdockerimage?(2个回答)关闭2年前。我有一个基本的Dockerfile,其中包含以下内容:FROMphp:7.1-apacheRUNapt-getupdate&&docker-php-ext-installpdo_mysqlCOPY./var/wwwEXPOSE80我有一个docker-compose.yml文件version:"3"services:app:build:.ports:-"80:80"volumes:-.:/var/wwwdepends_on:-mysqlmysql:image:

php - 什么会导致间歇性的 SQLSTATE[HY000] [2002] No such file or directory errors from php PDO mysql on Debian Lenny?

这个问题在这里已经有了答案:MySQLconnectionnotworking:2002Nosuchfileordirectory(23个回答)关闭7年前。连接是通过本地主机,使用mysqldsock文件。这些在99%以上的时间都在工作,但在一些奇怪的情况下我得到错误:SQLSTATE[HY000][2002]Nosuchfileordirectory相同的页面将在下一个请求中再次工作。我唯一能想到的是某种奇怪的文件系统错误。