Geschäftsszenario: Der Besuchsstatus des Besuchers muss aufgezeichnet werden, kann jedoch nicht wiederholt aufgezeichnet werden Vor dem Einfügen können Sie feststellen, ob die einzufügenden Daten vorhanden sind. Der Geschäftscode lautet wie folgt: INSERT INTO t_topic_vistor(Benutzer-ID,Themencode) SELECT '218', 'XQ33019920170811142528217' VON DUAL, WO NICHT EXISTIERT (AUSWÄHLEN * FROM t_topic_vistor WHERE user_id = 218 und Themencode = "XQ33019920170811142528217") Die Syntax lautet wie folgt: INSERT INTO Tabelle (Feld1, Feld2, Feldn) SELECT 'Feld1', 'Feld2', 'Feldn' FROM DUAL WHERE NOT EXISTS(SELECT Feld FROM Tabelle, WO Feld = ?) Zusatzwissen: MySql fügt ein, wenn es nicht existiert, aktualisiert oder ignoriert, wenn es existiert Vorwort Beim Einfügen von Daten müssen Sie möglicherweise doppelte Daten ignorieren oder ersetzen (basierend auf einem bestimmten Feld). Dies kann auf Anwendungsebene gehandhabt werden, oder Sie können komplexe SQL-Anweisungen verwenden (wenn Sie nur eine einfache SQL-Syntax kennen). Natürlich können Sie auch eine einfache SQL-Syntax verwenden, aber diese ist nicht für alle Datenbanktypen universell. Alle nachfolgenden Beispiele beziehen sich ausschließlich auf MySQL und sind nicht beliebig auf andere Datenbanken übertragbar. Beispiele Tabellenname: Student Tabellenfelder:
Ursprüngliche Tabellendaten:
Hinweis: Alle folgenden Beispiele erfordern, dass in den einzufügenden Daten ein UNIQUE-Index oder ein PRIMARY KEY-Feld vorhanden ist. Die Primärschlüssel-ID der Tabelle wird hier eingeführt und auf automatische Inkrementierung eingestellt. Sie können die Änderungen später sehen. 1. Einfügen, wenn nicht vorhanden, aktualisieren, wenn vorhanden 1.1 bei Aktualisierung doppelter Schlüssel Wenn die eingefügten Daten einen Konflikt/ein Duplikat im UNIQUE-Index oder im PRIMARY KEY verursachen, führen Sie eine UPDATE-Anweisung aus, zum Beispiel: INSERT INTO `student`(`Name`, `Alter`) VALUES('Jack', 19) BEIM DUPLIZIERTEN SCHLÜSSEL UPDATE `age`=19; -- Wenn ein Konflikt auftritt, wird die Update-Anweisung ausgeführt -- 2 Zeile(n) betroffen Die Anzahl der betroffenen Zeilen beträgt hier 2, da in der Datenbank Daten mit dem Namen „Jack“ vorhanden sind. Wenn diese Daten nicht vorhanden sind, beträgt die Anzahl der betroffenen Zeilen 1. Die neuesten Tabellendaten lauten wie folgt:
1.2 ersetzen durch Wenn die eingefügten Daten einen Konflikt/ein Duplikat im UNIQUE-Index oder im PRIMARY KEY verursachen, löschen Sie zuerst die alten Daten und fügen Sie dann die neuesten Daten ein, zum Beispiel:
Die Anzahl der hier betroffenen Zeilen beträgt 2, da in der Datenbank Daten mit dem Namen „Jack“ vorhanden sind. Der Wert von „id“ wird 2, da zuerst die alten Daten gelöscht und dann die Daten eingefügt werden. Die neuesten Tabellendaten lauten wie folgt:
2. Vermeiden Sie doppelte Einfügungen Schlüsselwort/Satz: Einfügen ignorieren in. Wenn die eingefügten Daten einen Konflikt/ein Duplikat im UNIQUE-Index oder PRIMARY KEY verursachen, wird der Vorgang ignoriert/es werden keine Daten eingefügt, zum Beispiel:
Hier sind bereits Daten mit dem Namen „Jack“ vorhanden, daher werden die neu eingefügten Daten ignoriert, die Anzahl der betroffenen Zeilen beträgt 0 und die Tabellendaten bleiben unverändert. Der obige Vorgang zum Beurteilen, ob Daten vorhanden sind, bevor sie in MySQL eingefügt werden, ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen. Das könnte Sie auch interessieren:
|
<<: Implementierung der Docker-Container-Statuskonvertierung
>>: Verwendung des if-Urteils in HTML
MySQL-Berechtigungen und Indizes Der höchste Benu...
Beispiel: <html> <Kopf> <style typ...
dl: Definitionsliste Definitionsliste dt: Definiti...
Inhaltsverzeichnis Das Grundprinzip von MySQL Mas...
Inhaltsverzeichnis 1. Vier Konzepte 1. JavaScript...
Inhaltsverzeichnis Index - Allgemeiner Index - Ei...
Inhaltsverzeichnis Der Unterschied zwischen Hash ...
Was ist ein Deckungsindex? Das Erstellen eines In...
Heutzutage ist plattformübergreifende Entwicklung...
Hintergrund Haben Sie sich jemals gefragt, wie Si...
Inhaltsverzeichnis einführen Start Installieren ①...
Ich habe vor Kurzem eine einfache Studie zur Date...
Es gibt drei Hauptmethoden der MySQL-Replikation:...
Standort / { Index Index.jsp; Proxy_next_upstream...
In diesem Artikelbeispiel wird der spezifische Co...