Mysql
 sql >> база данни >  >> RDS >> Mysql

Как мога да получа грешка при изпълнение на множество заявки с PDO?

Намерих отговора в използването на подготвено изявление. След като прегледам всички набори редове, мога да проверя дали последната изпълнена заявка е причинила грешка с помощта на $stmt->errorInfo() .

$db = new PDO("mysql:host=localhost;dbname=test", 'root', '');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 1);

$sql = "
DELETE FROM car; 
INSERT INTO car(name, type) SELECT name, from FROM vehicle;
";

$stmt = $db->prepare($sql);
$stmt->execute();
$i = 0;

do {
  $i++;
} while ($stmt->nextRowset());

$error = $stmt->errorInfo();
if ($error[0] != "00000") {
  echo "Query $i failed: " . $error[2];
  die();
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Инсталиране на MySQL-python

  2. Как работи функцията MATCH() в MySQL

  3. Изберете най-малката стойност от множество колони с PHP/MySQL

  4. MS Access Multi-Join Query

  5. Как да направите броене на заявка за съюз