PDO::exec()

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

PDO::exec

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)

PDO::exec — Exekverar ett SQL-uttryck och returnerar antalet påverkade rader.

Beskrivning

public PDO::exec(string $statement): int|false

PDO::exec() exekverar ett SQL-uttryck i en enda funktion, och returnerar antalet rader som påverkades av uttrycket.

Notera:

  • PDO::exec() returnerar inte resultat från en SELECT-fråga.
  • För en SELECT-fråga som endast behöver utföras en gång under ditt program, överväg att använda PDO::query.
  • För ett uttryck som behöver köras flera gånger, förbered ett PDOStatement-objekt med PDO::prepare och kör uttrycket med PDOStatement::execute.

Parametrar

statement
SQL-uttrycket som ska förberedas och exekveras.
Data i frågan bör vara korrekt undkommad.

Returvärden

PDO::exec() returnerar antalet rader som modifierades eller raderades av SQL-uttrycket. Om inga rader påverkades returnerar funktionen 0.

Varning: Denna funktion kan returnera ett booleskt false, men kan också returnera ett värde som utvärderas till false. Använd alltid operatorn === för att testa returvärdet.

Ett felaktigt exempel som förlitar sig på returvärdet från PDO::exec() visas nedan:

<?php
$db->exec() or die(print_r($db->errorInfo(), true)); // felaktigt
?>

Fel/Uppslag

  • Skickar ett fel på nivån E_WARNING om attributet PDO::ATTR_ERRMODE är inställt på PDO::ERRMODE_WARNING.
  • Kastar ett PDOException-fel om attributet PDO::ATTR_ERRMODE är inställt på PDO::ERRMODE_EXCEPTION.

Exempel

Exempel 1: Utför ett DELETE-uttryck

Räkna antalet rader som raderades av ett DELETE-uttryck utan WHERE-klausul.

<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');

/* Ta bort alla rader från tabellen FRUIT */
$count = $dbh->exec("DELETE FROM fruit");

/* Returnera antalet rader som raderades */
print "Deleted $count rows.\n";
?>

Utdata från ovanstående exempel:

Deleted 1 rows.

Se även

  • PDO::prepare - Förbereder ett uttryck för exekvering och returnerar ett statement-objekt.
  • PDO::query - Förbereder och exekverar ett SQL-uttryck utan platshållare.
  • PDOStatement::execute - Exekverar ett förberett statement.

Sidslut

Orginalhemsidan på Engelska :https://www.php.net/manual/en/pdo.exec.php
PHP Funktioner Funktionsreferens Databas-tillägg


Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Huddinge Datorhjälp som har sponsrat Linux.se med webbhotell.