sql >> Database teknologi >  >> RDS >> Mysql

Hvordan kan jeg med PDO sikre mig, at en UPDATE-erklæring var vellykket?

Det afhænger af, hvad du mener med "vellykket". Hvis du mener, at forespørgslen blev udført uden fejl, så PDO vil enten kaste en undtagelse ved fejl eller returnere FALSE fra PDOStatement::execute() , afhængigt af hvilken fejltilstand du har indstillet, så en "succesfuld" forespørgsel i så fald ville bare være en, hvor udførelsesmetoden ikke returnerede FALSE eller smid en undtagelse.

Hvis du mener "succesfuld" ved, at der faktisk var rækker opdateret (i modsætning til kun 0 rækker opdateret), så skal du tjekke det ved at bruge PDOStatement::rowCount() , som vil fortælle dig antallet af berørte rækker fra den forrige forespørgsel.

Advarsel:For opdateringer hvor newvalue = oldvalue PDOStatement::rowCount() returnerer nul. Du kan bruge

for at deaktivere denne uventede adfærd.



  1. mysql:se alle åbne forbindelser til en given database?

  2. Generering af rækkefølge i rækkefølge

  3. Kører du mysql_upgrade i Docker?

  4. Returner slutningen af ​​måneden i SQLite