„Replace“ und „Replace into“ von MySQL sind beides häufig verwendete Funktionen. „Replace“ führt tatsächlich eine Aktualisierungsoperation aus, anstatt zuerst zu löschen und dann einzufügen. „Replace into“ ist tatsächlich sehr ähnlich zu „Insert into“, aber bei „Replace into“ wird der alte Datensatz gelöscht, bevor der neue Datensatz eingefügt wird, wenn ein alter Datensatz in der Tabelle für einen PRIMARY KEY oder einen UNIQUE-Index denselben Wert hat wie ein neuer Datensatz. Ersetzen ist eine in MySQL häufig verwendete Funktion zum Verarbeiten von Zeichenfolgen, die den Inhalt einer Zeichenfolge ersetzen kann. Es gibt auch eine ähnliche Zeichenfolgenverarbeitungsoperation namens Trim, auf die ich hier nicht näher eingehen werde. Die Hauptfunktion von „Ersetzen in“ ähnelt der Einfügeoperation. Der Hauptunterschied besteht darin, dass beim Ersetzen anhand des Primärschlüssels oder des eindeutigen Index geprüft wird, ob die Daten vorhanden sind. Wenn die Daten vorhanden sind, werden sie vor der Aktualisierung gelöscht. Beispiel: #Tabellenstruktur: CREATE TABLE `t_test` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(1) NICHT NULL STANDARD '', Primärschlüssel (`id`), EINZIGARTIGER SCHLÜSSEL `idx_name` (`name`) MIT BTREE ) ENGINE=InnoDB STANDARD-CHARSET=utf8mb4 Einfügen des ersten Datensatzes INSERT INTO t_test (`Name`) WERTE ('a') #oder REPLACE INTO t_test (`name`) VALUES ('a') ps: Das Schlüsselwort into beim Ersetzen von into kann weggelassen werden. Sie sehen gleich aus, werden aber etwas anders verwendet. 1. ersetzen(Objekt,Suchen,Ersetzen) Ersetzen Sie alle Vorkommen von Suche im Objekt durch Ersetzen. Beispiel: Ersetzen Sie „Details“ im Namensfeld der Tabelle durch „Beschreibung“ 2. ersetzen durch Entspricht: REPLACE funktioniert ähnlich wie INSERT. Wenn ein alter Datensatz in der Tabelle für einen PRIMARY KEY oder einen UNIQUE-Index denselben Wert wie ein neuer Datensatz hat, wird der alte Datensatz gelöscht, bevor der neue Datensatz eingefügt wird. Beachten Sie, dass die Verwendung einer REPLACE-Anweisung keinen Sinn ergibt, sofern die Tabelle nicht über einen PRIMARY KEY- oder UNIQUE-Index verfügt. Diese Anweisung wäre identisch mit INSERT, da kein Index verwendet wird, um zu bestimmen, ob die neue Zeile andere Zeilen dupliziert. Die Werte aller Spalten werden aus den in der REPLACE INTO-Anweisung angegebenen Werten übernommen. Eventuell fehlende Spalten werden wie bei INSERT INTO auf die Standardwerte gesetzt. Sie können weder auf Werte aus der aktuellen Zeile verweisen, noch können Sie Werte in einer neuen Zeile verwenden. Wenn Sie eine Zuweisung wie „ Um REPLACE INTO zu verwenden, müssen Sie über INSERT- und DELETE-Berechtigungen für die Tabelle verfügen. Die REPLACE-Anweisung gibt eine Zahl zurück, die die Anzahl der betroffenen Zeilen angibt. Diese Zahl ist die Summe der Anzahl gelöschter und eingefügter Zeilen. Wenn diese Zahl bei einem einzeiligen REPLACE 1 ist, wird eine Zeile eingefügt und es werden keine Zeilen gelöscht. Wenn diese Zahl größer als 1 ist, wurden eine oder mehrere alte Zeilen gelöscht, bevor die neue Zeile eingefügt wurde. Wenn die Tabelle mehrere eindeutige Indizes enthält und die neue Zeile die Werte verschiedener alter Zeilen in verschiedenen eindeutigen Indizes dupliziert, ist es möglich, dass eine einzelne Zeile mehrere alte Zeilen ersetzt. Anhand der Anzahl der betroffenen Zeilen lässt sich leicht feststellen, ob durch REPLACE nur eine Zeile hinzugefügt wurde, oder ob durch REPLACE auch andere Zeilen ersetzt wurden: Prüfen Sie, ob die Zahl 1 (Addition) oder größer (Ersetzung) ist. Derzeit ist es nicht möglich, eine Tabelle zu ändern und in einer Unterabfrage Daten aus derselben Tabelle auszuwählen. Hier ist eine detailliertere Beschreibung des verwendeten Algorithmus (dieser Algorithmus wird auch für LOAD DATA...REPLACE verwendet): 1. Versuchen Sie, eine neue Zeile in die Tabelle einzufügen 2. Wenn ein Einfügen aufgrund eines doppelten Schlüsselfehlers für einen Primärschlüssel oder einen eindeutigen Schlüssel fehlschlägt:
Drei Formen:
PS: Drei häufig verwendete Anweisungen zum Einfügen von Daten in MySQL:
Zusammenfassen 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. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Eine kurze Analyse der Übereinstimmungspriorität des Nginx-Konfigurationsspeicherorts
>>: Implementierung eines einfachen Timers in JavaScript
1. MySQL herunterladen URL: https://dev.mysql.com...
#Case: Gehaltsstufen von Mitarbeitern abfragen WÄ...
In diesem Artikelbeispiel wird der spezifische Co...
Die Schritte zum Verpacken einer Python-Umgebung ...
„Großartig“ sind wahrscheinlich die beiden Worte, ...
Dieser Artikel stellt das Flex-Layout vor, um ein...
<br /> Hinweis: Alle Texte, mit Ausnahme der...
Da die von nativen JS initiierten Netzwerkanforde...
1. Übersicht über Dateiberechtigungen und Eigentu...
In diesem Artikel finden Sie das Installations-Tu...
Studenten, die Websites erstellen, stellen häufig...
In diesem Artikel wird das MySQL-Sicherungsskript...
Im Laufe der Arbeit werden Sie auf viele Fälle im...
Inhaltsverzeichnis 1 Konfiguration der Java-Umgeb...
Es gibt zwei Möglichkeiten, schreibgeschützte Eing...