mysqli_warning_count în PHP

Returnează numărul de avertismente generate de ultima interogare pe conexiune.

Sintaxă
mysqli_warning_count(mysqli $mysql): int

Ce face mysqli_warning_count

MySQL poate termina o interogare cu succes, dar cu avertismente: o împărțire la zero, o valoare rotunjită, un tabel inexistent la DROP TABLE IF EXISTS. mysqli_warning_count spune câte au fost; textul lor îl iei cu mysqli_get_warnings sau cu interogarea SHOW WARNINGS.

Exemplele de pe această pagină folosesc baza de date magazin, cu tabelul produse (coloanele id INT AUTO_INCREMENT, nume VARCHAR(100) NOT NULL, pret INT și stoc INT) și patru rânduri: Laptop (3200 lei, 5 buc.), Mouse (80 lei, 40 buc.), Monitor (900 lei, 0 buc.) și Tastatură (150 lei, 12 buc.). Comenzile SQL sunt explicate în secțiunea MySQL. Rezultatele au fost scrise pentru MySQL 8, pentru că exemplele au nevoie de un server de baze de date.

Parametri

Parametru Descriere
$mysql Conexiunea.

Ce returnează

Numărul de avertismente.

Exemple

Exemplul 1: Interogări cu avertismente

<?php
$conn = mysqli_connect("localhost", "ana", "parola_ta", "magazin");

mysqli_query($conn, "SELECT pret / 0 FROM produse");
echo mysqli_warning_count($conn) . "\n";

mysqli_query($conn, "DROP TABLE IF EXISTS tabel_vechi");
echo mysqli_warning_count($conn) . "\n";

mysqli_query($conn, "SELECT pret FROM produse");
echo mysqli_warning_count($conn);

Rezultat (cu un server MySQL și tabelul produse de mai sus)

4
1
0

Greșeli frecvente

  • Ignori avertismentele la importuri de date. Pot însemna valori trunchiate sau convertite; verifică mysqli_warning_count după fiecare comandă importantă.

Comenzi înrudite

  • mysqli_get_warnings: Returnează avertismentele ultimei interogări ca obiect mysqli_warning, pe care îl parcurgi cu next().
  • mysqli_stmt_get_warnings: Returnează avertismentele generate de o interogare pregătită, ca obiect mysqli_warning.
  • mysqli_info: Returnează un text cu detalii despre ultima interogare: rânduri potrivite, modificate, duplicate.