Der Unterschied zwischen „Ersetzen durch“ und „Einfügen in“ bei doppeltem Schlüssel Verwendung von „Ersetzen“
Verwendung von „Einfügen in …“ bei doppeltem Schlüssel
Experimentelle Demonstration Tabellenstruktur Tabelle erstellen helei1( id int(10) unsigned NOT NULL AUTO_INCREMENT, Name varchar (20) NICHT NULL STANDARD '', Alter tinyint(3) unsigned NOT NULL Standard 0, Primärschlüssel (ID), EINZIGARTIGER SCHLÜSSEL uk_name (Name) ) ENGINE=innodb AUTO_INCREMENT=1 STANDARD-ZEICHENSATZ=utf8; Tabellendaten [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 1 | He Lei | 26 | | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | +----+-----------+-----+ 3 Zeilen im Satz (0,00 Sek.) durch Ersetzen in Gebrauch nehmen [email protected] (helei)> ersetzen durch helei1 (Name) Werte('Name'); Abfrage OK, 2 Zeilen betroffen (0,00 Sek.) [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 0 | +----+-----------+-----+ 3 Zeilen im Satz (0,00 Sek.) [email protected] (helei)> ersetzen durch helei1 (Name) Werte('Helei'); Abfrage OK, 1 Zeile betroffen (0,00 Sek.) [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 0 | | 5 | Aixuan | 0 | +----+-----------+-----+ 4 Zeilen im Satz (0,00 Sek.) Verwendung von „Ersetzen“ Wenn kein Schlüsselkonflikt vorliegt, entspricht „Ersetzen in“ dem „Einfügen“ und es werden die Standardwerte der anderen Spalten verwendet. Wenn ein Schlüsselkonflikt auftritt, wird die Auto-Increment-Spalte aktualisiert, um die in Konflikt stehende Spalte zu ersetzen, und die verbleibenden Spalten werden auf ihre Standardwerte zurückgesetzt. Einfügen in … bei doppeltem Schlüssel: [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 0 | | 5 | Aixuan | 0 | +----+-----------+-----+ 4 Zeilen im Satz (0,00 Sek.) [email protected] (helei)> einfügen in helei1 (Name, Alter) Werte('Name',0) bei Aktualisierung doppelter Schlüssel Alter=100; Abfrage OK, 2 Zeilen betroffen (0,00 Sek.) [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 100 | | 5 | Aixuan | 0 | +----+-----------+-----+ 4 Zeilen im Satz (0,00 Sek.) [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 100 | | 5 | Aixuan | 0 | +----+-----------+-----+ 4 Zeilen im Satz (0,00 Sek.) [email protected] (helei)> in helei1 (Name) Werte („Name“) bei Aktualisierung auf doppelten Schlüssel einfügen, Alter=120; Abfrage OK, 2 Zeilen betroffen (0,01 Sek.) [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 100 | | 5 | Aixuan | 120 | +----+-----------+-----+ 4 Zeilen im Satz (0,00 Sek.) [email protected] (helei)> in helei1 (Name) Werte einfügen („existiert nicht“) bei doppeltem Schlüsselupdate, Alter=80; Abfrage OK, 1 Zeile betroffen (0,00 Sek.) [email protected] (helei)> wähle * von helei1; +----+-----------+-----+ | ID | Name | Alter | +----+-----------+-----+ | 2 | Xiao Ming | 28 | | 3 | Xiaohong | 26 | | 4 | He Lei | 100 | | 5 | Aixuan | 120 | | 8 | existiert nicht | 0 | +----+-----------+-----+ 5 Zeilen im Satz (0,00 Sek.) Zusammenfassen Die Verwendung von „replace into“ entspricht dem Ausführen einer Löschoperation und dann einer Einfügeoperation, wenn ein widersprüchlicher Schlüssel gefunden wird. Der Standardwert wird für nicht angegebene Spalten verwendet. Dies führt dazu, dass sich der automatisch inkrementierte Primärschlüssel ändert. Wenn die Tabelle Fremdschlüssel enthält oder die Geschäftslogik vom Primärschlüssel abhängt, tritt eine Ausnahme auf. Daher wird empfohlen, bei doppelten Schlüsseln die Funktion „Einfügen in …“ zu verwenden. Aufgrund der Eile beim Schreiben sind einige Fehler oder Ungenauigkeiten im Artikel unvermeidlich. Wir bitten die Leser aufrichtig, etwaige Unangemessenheiten zu kritisieren und zu korrigieren. Nun, das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: So aktualisieren Sie https unter Nginx
>>: Detaillierte Erklärung der praktischen Anwendung regulärer Ausdrücke in JavaScript
Als ich kürzlich Docker lernte, stellte ich fest,...
1. Das WEB verstehen Webseiten bestehen hauptsäch...
1. Übersicht Beim täglichen Betrieb und bei der W...
Hier präsentiert 123WORDPRESS.COM den ersten Teil...
So zeigen Sie Linux-Dateien an Befehl zum Anzeige...
[LeetCode] 176. Zweithöchstes Gehalt Schreiben Si...
Als ich zum ersten Mal mit Docker in Berührung ka...
Inhaltsverzeichnis Vorwort Hauptimplementierungsc...
Wenn Benutzer an einem Backend-Verwaltungssystem ...
Als leichte Open-Source-Datenbank wird MySQL häuf...
Ansible ist ein neues, auf Python basierendes, au...
Die Wirkung ist wie folgt: analysieren 1. Hier se...
Einführung Es ist in Ordnung, am Ende eines JS-Co...
Finden Sie das Problem Als ich mich kürzlich über...
Inhaltsverzeichnis Docker-Maven-Plugin Schritte z...