sql >> Database >  >> RDS >> Mysql

Meerdere zoekopdrachten afhankelijk van elkaar

U kunt transacties gebruiken als de engine die u gebruikt dit ondersteunt (InnoDB, BDB).

Zie http://dev.mysql.com/doc/refman/ 5.0/nl/commit.html voor voorbeelden.

Bewerken:snel voorbeeld met mysqli :

$connection->autocommit(FALSE); // disable auto-commit and start a new transaction
$result  = $connection->query("INSERT INTO `table` VALUES (1,2,3)");
$result &= $connection->query("UPDATE `otherTable` SET `val1`=1 WHERE `id`=$idOfInsert");
if (!$result) {
  // One of the queries has failed: cancel the transaction
  $connection->rollback();
} else {
  // Both queries worked:commit the current transaction
  $connection->commit();
}
$connection->autocommit(TRUE); // enable auto-commit

Misschien wilt u de query's optimaliseren (d.w.z. de tweede niet uitvoeren als de eerste is mislukt, gebruik voorbereide instructies, ...)



  1. Hoe vergelijk ik overlappende waarden binnen een rij?

  2. Meertalige velden in DB-tabellen

  3. docker postgres pgadmin lokale verbinding

  4. Niet unieke tabel/alias