PHP在MySQL中执行查询的顺序

hel*_*osk 1 php mysql pdo

如果我在PHP中有一堆查询,假设我使用的是PDO,这些查询将按顺序执行,但是PHP或MySQL将在开始一个新查询之前等待一个查询完成?

$sql1 = $con->prepare("some query");
$sql2 = $con->prepare("some query");   
$sql3 = $con->prepare("some query");

$sql1->execute();
$sql2->execute();
$sql3->execute();
Run Code Online (Sandbox Code Playgroud)

如果我在PDO中使用具有相同查询的事务性块:

$con->beginTransaction();
Run Code Online (Sandbox Code Playgroud)

执行会一样吗?

Daa*_*aan 5

查询是执行选择,更新,插入或删除行的单个SQL语句。

事务是具有“ ACID”属性的SQL语句(从应用程序角度来看)的连续序列:

  • 原子性:所有语句或不执行任何语句。
  • 一致性:始终保持数据完整性。
  • 隔离:事务A永远不会影响事务B。
  • 持久性:即使系统发生故障,事务提交的更改也会保留。

  • 不,在您的示例中,`$ sql3`将始终在$ sql2`完成之后开始。 (2认同)