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
Heutzutage ist die Anwendungsentwicklung grundsät...
Das Anzeigen und Interpretieren von Informationen...
Beim Abspielen von Musik werden die Liedtexte im ...
Einführung in die Verwendung des MySQL-Schlüsselw...
Erster Schritt: Klicken Sie in VMware auf "B...
Vorwort Beim Einsatz von Docker in einer Produkti...
Inhaltsverzeichnis Überprüfung der responsiven Pr...
1. Replikationsprinzip Der Masterserver schreibt ...
Ich kann mich über die Befehlszeile ganz normal b...
Ziehen Sie die Maus, um einen Screenshot der Seit...
Inhaltsverzeichnis Vorwort 1. Herkömmliche Vue-Ko...
Inhaltsverzeichnis 1. Vererbung der Prototypkette...
Inhaltsverzeichnis 2. Komma-Operator 3. JavaScrip...
Inhaltsverzeichnis 1. Mutex 1. Initialisierung de...
Die vom Docker abgerufenen Befehle werden standar...