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

как да намерите вмъкване на запис в mysql с помощта на commit()

Доколкото разбирам, вие очаквате PDOException да бъде хвърлено, когато изразът не се изпълни. Но както виждам, изключение не се хвърля по подразбиране в такива случаи. Вижте как можете да промените това тук

Да предположим, че във вашия случай трябва да имате код като този:

$conn = new PDO($connection_string); 
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // this will force PDO to throw exception when SQL statement fails instead of simply setting an error.

Да предположим, че това ще работи добре за вас.

Моля, имайте предвид, че не трябва да използвате

$SqlQuery="INSERT INTO tab_photo VALUES('$PhotoID','$ProjectId','$Day','$barCode','$photoName','$PhotoXml')";

Вместо това трябва да използвате свързване на параметри:

$SqlQuery="INSERT INTO tab_photo VALUES(:PhotoID,:ProjectId,:Day,:barCode,:photoName,:PhotoXml)";
$stmt = $conn->prepare($SqlQuery);
$conn->beginTransaction();
$stmt->execute(array(':PhotoID' => $PhotoID, ':ProjectId' => $ProjectId, ....));
sleep(1);

Вижте това за повече подробности.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да се предпазя от атаки с инжектиране на SQL, използвайки DBI на Perl?

  2. Достатъчно добър ли е urlencode(), за да спре всички атаки с инжектиране на SQL през 2011 г

  3. Предупреждение:формуляр на тази страница има повече от 1000 полета PHP MySql

  4. MYSQL променлива IN клауза

  5. Помощ при SQL заявка за намиране на следващата свободна дата за система за резервации