Heim > Backend-Entwicklung > PHP-Tutorial > Wie rufe ich effizient einen einzelnen Datensatz aus einer MySQLi-Datenbank ab?

Wie rufe ich effizient einen einzelnen Datensatz aus einer MySQLi-Datenbank ab?

DDD
Freigeben: 2024-12-19 22:31:18
Original
598 Leute haben es durchsucht

How to Efficiently Fetch a Single Record from a MySQLi Database?

Abrufen eines einzelnen Datensatzes aus einer Datenbank mit MySQLi

Das Abrufen einzelner Zeilen aus einer Datenbank mit MySQLi unterscheidet sich vom Durchlaufen einer Reihe von Datensätzen. Um dies zu erreichen, verwenden wir die von MySQLi bereitgestellten Abrufmethoden, sodass keine Schleifen erforderlich sind.

Abrufen einer einzelnen Zeile als assoziatives Array

Wenn wir das Ganze benötigen Zeile als assoziatives Array verwenden, können wir die folgende Syntax verwenden:

$row = $result->fetch_assoc();
Nach dem Login kopieren

Damit wird die erste Zeile der Ergebnismenge dem zugewiesen $row-Variable, die dann verwendet werden kann, um auf einzelne Spaltenwerte zuzugreifen.

Abrufen eines einzelnen Werts

In Fällen, in denen nur ein einzelner Wert erforderlich ist, können wir verwenden :

// PHP 8.1+
$value = $result->fetch_column();

// Older PHP versions
$value = $result->fetch_row()[0] ?? false;
Nach dem Login kopieren

Die letztgenannte Syntax prüft auf Nullwerte und gibt bei Vorliegen „false“ zurück.

Beispiel Verwendung

Betrachten Sie die Beispielabfrage zum Abrufen der ersten Zeile der Tabelle „Benutzer“:

$sql = "SELECT * FROM users LIMIT 1";
$row = mysqli_query($conn, $sql)->fetch_assoc();
Nach dem Login kopieren

Jetzt können wir mit $row['column_name'] auf bestimmte Werte zugreifen. , wie zum Beispiel:

$name = $row['name'];
$email = $row['email'];
Nach dem Login kopieren

Variablen verwenden in Abfragen

Bei der Verwendung von Variablen in SQL-Abfragen ist es wichtig, vorbereitete Anweisungen zu verwenden, um SQL-Injection zu verhindern. Um beispielsweise eine Zeile basierend auf einer bestimmten ID abzurufen:

// PHP 8.2+
$id = 123;
$sql = "SELECT * FROM users WHERE id = ?";
$row = $conn->execute_query($sql, [$id])->fetch_assoc();

// Older PHP versions
$id = 123;
$stmt = $conn->prepare("SELECT * FROM users WHERE id = ?");
$stmt->bind_param("s", $id);
$stmt->execute();
$row = $stmt->get_result()->fetch_assoc();
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie rufe ich effizient einen einzelnen Datensatz aus einer MySQLi-Datenbank ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage