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
1. Um die MySQL-Datenbank herunterzuladen, besuch...
Dieser Artikel veranschaulicht anhand eines Beisp...
1. Übersicht über Inner Join-Abfragen Der Inner J...
Dieser Artikel stellt hauptsächlich ein Beispiel ...
Kürzlich habe ich festgestellt, dass nach der Ver...
1. Formular <form id="" name="&...
Aufgrund der Anforderungen des Arbeitsprojekts is...
Transaktionen in MySQL werden standardmäßig autom...
Fehlermeldung: Der Job für mysqld.service ist feh...
Beschreibung der Portverfügbarkeitserkennung, wen...
Erklären Sie den gesamten Prozess von CLion von G...
In diesem Artikel wird hauptsächlich die Installa...
Syntax der Whitelist-Regel: Grundregel wl:ID [neg...
Inhaltsverzeichnis 1. So erhalten Sie unterschied...
<br />Der Inhalt dieser Site ist Original. B...