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
Nehmen Sie als Beispiel die WEB-Schnittstelle von...
1. Implementieren Sie den Anruf Schritt: Legen Si...
Bei der Verwendung von IIS als Server wurde die A...
In tatsächlichen Entwicklungs- oder Produktionsum...
Inhaltsverzeichnis Entwicklungsumgebung Game-Engi...
Docker bietet mehrere Netzwerke wie Bridge, Host,...
HTML-Style-Tag Stil-Tag - Verwenden Sie dieses Ta...
Vorwort Unter Linux ist zum Kompilieren und Verkn...
1. Syntax TIMESTAMPDIFF(Einheit, Beginn, Ende); G...
Grid ist ein zweidimensionales Rasterlayoutsystem...
Bei der Verwendung von Docker-Compose für die Ber...
Die Linux-Betriebssysteme der RHEL/CentOS-Reihe v...
Durch Klicken Bilder zu wechseln, ist im Leben ei...
Inhaltsverzeichnis Überblick console.log konsole....
Eine Transaktion ist eine logische Gruppe von Ope...