我怎样才能执行一个同时包含 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/