PHP mysql 中执行的查询序列
PHP sequence of executed queries in mysql
如果我在 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();
如果我在 PDO 中使用具有相同查询的事务块:
$con->beginTransaction();
执行会一样吗?
查询是单个 SQL 语句,它执行 Select、更新、插入或删除行。
事务是具有 "ACID" 属性的 SQL 语句的连续序列(从应用程序的角度来看):
- 原子性:所有语句或none都被执行。
- 一致性:始终保持数据完整性。
- 隔离:事务 A 永远不会影响事务 B。
- 持久性:事务提交的更改会持续存在,即使在系统出现故障时也是如此。
如果我在 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();
如果我在 PDO 中使用具有相同查询的事务块:
$con->beginTransaction();
执行会一样吗?
查询是单个 SQL 语句,它执行 Select、更新、插入或删除行。
事务是具有 "ACID" 属性的 SQL 语句的连续序列(从应用程序的角度来看):
- 原子性:所有语句或none都被执行。
- 一致性:始终保持数据完整性。
- 隔离:事务 A 永远不会影响事务 B。
- 持久性:事务提交的更改会持续存在,即使在系统出现故障时也是如此。