Heim > Datenbank > MySQL-Tutorial > Wie führe ich Raw-SQL-Abfragen mit Doktrin 2 aus?

Wie führe ich Raw-SQL-Abfragen mit Doktrin 2 aus?

Patricia Arquette
Freigeben: 2025-01-04 15:58:40
Original
289 Leute haben es durchsucht

How to Execute Raw SQL Queries Using Doctrine 2?

Ausführen von Raw SQL mit Doctrine 2

Doktrin 2 bietet eine praktische Möglichkeit, mit einer Datenbank mithilfe von Object Relational Mapping (ORM) zu interagieren. Es kann jedoch Situationen geben, in denen Sie unformatierte SQL-Abfragen direkt ausführen müssen. Dieser Artikel zeigt, wie Sie Roh-SQL mit Doktrin 2 ausführen.

Stellen Sie sich ein Szenario vor, in dem Sie Datenbanktabellen abschneiden und sie mit Standardtestdaten initialisieren möchten. Um dies zu erreichen, können Sie die folgenden unformatierten SQL-Abfragen ausführen:

TRUNCATE TABLE table_name;
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
Nach dem Login kopieren

In Doctrine 2 können Sie unformatierte SQL-Abfragen mit den folgenden Schritten ausführen:

  1. Die Doctrine-Entität abrufen Manager:
$em = $this->getDoctrine()->getManager();
Nach dem Login kopieren
  1. Bereiten Sie die SQL vor Anweisung:
$sql = "TRUNCATE TABLE table_name";
$stmt = $em->getConnection()->prepare($sql);
Nach dem Login kopieren
  1. Führen Sie die SQL-Anweisung aus:
$stmt->execute();
Nach dem Login kopieren

Sie können die Ergebnisse der Abfrage auch mithilfe der Methode fetchAll() abrufen :

$results = $stmt->fetchAll();
Nach dem Login kopieren

Beispiel

Der folgende Codeausschnitt veranschaulicht, wie ein Raw ausgeführt wird SQL-Abfrage in Lehre 2:

public function getAuthoritativeSportsRecords()
{   
    $sql = " 
        SELECT name,
               event_type,
               sport_type,
               level
          FROM vnn_sport
    ";

    $em = $this->getDoctrine()->getManager();
    $stmt = $em->getConnection()->prepare($sql);
    $stmt->execute();
    return $stmt->fetchAll();
}   
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie führe ich Raw-SQL-Abfragen mit Doktrin 2 aus?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage