Heim  >  Artikel  >  Backend-Entwicklung  >  Eine kurze Analyse, wie PHP die Datenbank betreibt

Eine kurze Analyse, wie PHP die Datenbank betreibt

PHPz
PHPzOriginal
2023-03-24 14:54:331980Durchsuche

Datenbank ist ein wichtiger Bestandteil der Netzwerkprogrammierung. Sie wird zum Speichern und Verwalten großer Datenmengen verwendet. In Netzwerkanwendungen müssen Benutzerinformationen, Produktinformationen und andere Dateninformationen gespeichert und verwaltet werden, daher ist der Datenbankbetrieb ein wesentlicher Bestandteil der Entwicklung einer Website. Als weit verbreitete Back-End-Server-Programmiersprache bietet PHP uns außerdem eine Reihe von Datenbankbetriebsfunktionen, mit denen wir die Datenbank einfach hinzufügen, löschen und ändern können.

In diesem Artikel werden die gängigen Operationen zum Hinzufügen, Löschen und Ändern von Datenbanken in PHP kurz vorgestellt, einschließlich SQL-Anweisungen, PDO-Klassen und MySQLi-Klassen. Ich hoffe, dass die Einführung in diesem Artikel Entwicklern helfen kann, den Betrieb von Datenbanken unter PHP besser zu verstehen.

1. SQL-Anweisung

SQL-Anweisung ist eine allgemeine Abfragesprache in der Datenbank, die zum Betreiben der Datenbank durch Anweisungen verwendet wird, um das Hinzufügen, Löschen, Ändern, Abfragen und andere Vorgänge von Daten abzuschließen. Um die Datenbank über SQL-Anweisungen in PHP zu betreiben, können Sie die Funktionen mysql_query(), mysqli_query() und PDO-Vorverarbeitungsanweisungen verwenden.

1.mysql_query()-Funktion

mysql_query()-Funktion ist eine Funktion, die in PHP zum Ausführen von SQL-Anweisungen verwendet wird. Um diese Funktion zu verwenden, müssen Sie eine Verbindung zu MySQL-Daten herstellen und dann SQL-Anweisungen über diese Funktion übergeben, um die Daten zu bearbeiten. Fügen Sie beispielsweise Daten mit dem INSERT-Befehl ein:

<?php
$con = mysql_connect("localhost","root","password");
mysql_select_db("my_db", $con);
mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES (&#39;Peter&#39;, &#39;Griffin&#39;, &#39;35&#39;)");
mysql_close($con);
?>

2.mysqli_query()-Funktion

mysqli_query()-Funktion ist eine Funktion in PHP für SQL-Anweisungen mit Parameterbindungen. Im Gegensatz zur Funktion mysql_query() unterstützt die Funktion mysqli_query() SQL-Anweisungen mit Parameterbindungen. Das Einfügen von Daten mit dem INSERT-Befehl kann beispielsweise wie folgt geschrieben werden:

<?php
$mysqli = new mysqli("localhost", "root", "password", "my_db");
$stmt = $mysqli->prepare("INSERT INTO Persons (FirstName, LastName, Age) VALUES (?, ?, ?)");
$stmt->bind_param("ssi", $fname, $lname, $age);
$fname = "Peter";
$lname = "Griffin";
$age = 35;
$stmt->execute();
$stmt->close();
$mysqli->close();
?>

3.PDO Prepared Statement

PDO (PHP Data Objects) ist eine PHP-Erweiterung, die für den Zugriff auf und den Betrieb verschiedener Datenbanktypen, einschließlich MySQL, verwendet werden kann. Oracle und SQL Server usw. Durch PDO-vorbereitete Anweisungen können wir SQL-Anweisungen basierend auf den übergebenen Parametern ausführen. Um beispielsweise Daten einzufügen, verwenden Sie den INSERT-Befehl:

<?php
$pdo = new PDO("mysql:host=localhost;port=3306;dbname=my_db", "root", "password");
$statement = $pdo->prepare("INSERT INTO Persons (FirstName, LastName, Age) VALUES (:fname, :lname, :age)");
$statement->bindParam(':fname', $fname);
$statement->bindParam(':lname', $lname);
$statement->bindParam(':age', $age);
$fname = "Peter";
$lname = "Griffin";
$age = 35;
$statement->execute();
$pdo = null;
?>

2. PDO-Klasse

Die PDO-Klasse ist ein Paket in PHP, das zur Interaktion mit der Datenbank verwendet wird. Um über die PDO-Klasse eine Verbindung zur Datenbank herzustellen, können wir mit der Prepare()-Methode eine vorbereitete Anweisung erstellen, der SQL-Anweisung Parameter hinzufügen und dann die SQL-Anweisung und die Daten für die Execute()-Methode bereitstellen. Die PDO-Klasse stellt außerdem Methoden wie beginTransaction() und commit() zum Öffnen und Senden von Transaktionen bereit.

<?php
$pdo = new PDO("mysql:host=localhost;port=3306;dbname=my_db", "root", "password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->beginTransaction();
try {
    $statement = $pdo->prepare("INSERT INTO Persons (FirstName, LastName, Age) VALUES (?, ?, ?)");
    $statement->bindParam(1, $fname);
    $statement->bindParam(2, $lname);
    $statement->bindParam(3, $age);
    $fname = "Peter";
    $lname = "Griffin";
    $age = 35;
    $statement->execute();
    $pdo->commit();
}
catch(PDOException $e) {
    $pdo->rollback();
    echo "Error: " . $e->getMessage();
}
$pdo = null;
?>

3. Die MySQLi-Klasse ist eine Erweiterungsbibliothek für die Verwendung von MySQL in PHP. Sie bietet leistungsfähigere und sicherere Funktionen als mysql_*-Funktionen und unterstützt neue MySQL-Serverfunktionen. Um die MySQLi-Klasse zu verwenden, müssen Sie über das Schlüsselwort new eine Instanz der MySQLi-Klasse erstellen und dann die Methode connect () aufrufen, um eine Verbindung zum MySQL-Server herzustellen.

<?php
$mysqli = new mysqli("localhost", "root", "password", "my_db");
$mysqli->query("INSERT INTO Persons (FirstName, LastName, Age) VALUES ('Peter', 'Griffin', '35')");
$mysqli->close();
?>

Zusammenfassung

In diesem Artikel werden hauptsächlich die häufig verwendeten Vorgänge zum Hinzufügen, Löschen und Ändern von Datenbanken in PHP vorgestellt, einschließlich SQL-Anweisungen, PDO-Klassen und MySQLi-Klassen usw. Durch die Einleitung dieses Artikels können wir verschiedene Betriebsmethoden und ihre Vor- und Nachteile kennenlernen und auch die Rolle der Parameterbindung für die Sicherheit beachten. Natürlich ist es in der tatsächlichen Entwicklung auch erforderlich, die am besten geeignete Methode zum Betreiben der Datenbank entsprechend den Projektanforderungen zu wählen, um die Benutzeranforderungen zu maximieren.

Das obige ist der detaillierte Inhalt vonEine kurze Analyse, wie PHP die Datenbank betreibt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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