php - 单个查询 MySQL 中的 INSERT 和 SELECT

标签 php mysql

我怎样才能执行一个同时包含 INSERT 和 SELECT 的查询,然后读取选择的结果? 我想插入然后选择一些东西,所有这些都必须在一个查询中完成...

我知道它在单个查询中接受多个命令...但我想读取查询结果,但我无法读取结果。我这样做:

$results=mysql_query("
INSERT INTO table1 (field1,field2) VALUES('aaa','bbbb') ON DUPLICATE KEY UPDATE `field1` = 'cccc', `field2`='dddddd'; 
SELECT field3 Form Table3 WHERE field3='eeeee';
",$connection);

while ($rows = mysql_fetch_array($results, MYSQL_NUM))  
echo $rows[0];

最佳答案

all must be done in one query...

为什么您需要一个查询中完成所有事情?

就像 Wiseguy 所说的,我认为您正在寻找的东西称为交易。

此外,考虑更新到 PDO 可能是个好主意,这将为您提供更完整的工具集,例如交易和查询参数。

无论如何,为了回答您最初的问题,不,这是不可能的。

更新:这是 PDO 中的事务示例。

try
{
    $pdo->beginTransaction();

    $pdo->query(' ... ');
    $pdo->query(' ... ');
    $pdo->query(' ... ');

    $pdo->commit();
}
catch(Exception $e)
{
    $pdo->rollback();
    die($e->getCode() . ': ' . $e->getMessage());
}

关于php - 单个查询 MySQL 中的 INSERT 和 SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9927097/

相关文章:

php - 检查 CIDR 子网是否包含 IP 地址

php - 是否存在已编译的 PHP 脚本?

php - 检测当前页面是否为Web根目录

php - 用PHP修改基于另一个的MySQL字段

mysql - wordpress 和 node.js

php - 我在尝试搜索数据库时遇到此错误。有什么建议么?

php - 无法访问 WordPress 登录并且也丢失了电子邮件详细信息

来自 SELECT 的 PHP mySQL 简单回显

mysql - 从多个 MySQL 表中获取两个用户的共享联系人

mysql - 如何在 MYSQL 中获取带分区的 RowNumber()