Fehlereinfügungsanalyse der Funktion „updatexml()“ von MySQL

Fehlereinfügungsanalyse der Funktion „updatexml()“ von MySQL

Verstehen Sie zunächst die Funktion updatexml()

UPDATEXML (XML_Dokument, XPath_Zeichenfolge, neuer_Wert);

Der erste Parameter: XML_document hat das String-Format und ist der Name des XML-Dokumentobjekts, in diesem Artikel „Doc“.

Der zweite Parameter: XPath_string (ein String im Xpath-Format). Wenn Sie die Xpath-Syntax nicht verstehen, finden Sie online ein Tutorial.

Der dritte Parameter: new_value im String-Format ersetzt die gefundenen Daten, die die Bedingungen erfüllen

Funktion: Ändern Sie den Wert des Knotens, der die Bedingungen im Dokument erfüllt

Ändern Sie den Wert von XPATH_string im XML_document

Und unsere Injektionsanweisung lautet:

updatexml(1, concat(0x7e,(AUSWÄHLEN @@version),0x7e),1)

Die Funktion concat() verkettet sie zu einem String, sodass dieser nicht dem Format von XPATH_string entspricht und zu einem Formatfehler führt.

FEHLER 1105 (HY000): XPATH-Syntaxfehler: ':root@localhost'

Zusammenfassung des XPath-Syntaxformats: https://www.jb51.net/article/125607.htm

Zusammenfassen

Dies ist der gesamte Inhalt dieses Artikels zur Fehlereinschleusungsanalyse der MySQL updatexml()-Funktion. Ich hoffe, er wird für alle hilfreich sein. Interessierte Freunde können sich auf Folgendes beziehen: Detaillierte Erläuterung der MySQL-Vorbereitungsprinzipien, mehrere wichtige MySQL-Variablen, Methoden zum Löschen von MySQL-Tabellendaten usw. Wenn Sie Fragen haben, können Sie jederzeit eine Nachricht hinterlassen. Jeder ist herzlich eingeladen, zu kommunizieren und zu diskutieren. Ich möchte auch meinen Freunden für ihre Unterstützung dieser Site danken.

Das könnte Sie auch interessieren:
  • Ausführliche Erläuterung der MySQL UPDATE-Anweisung
  • Detailliertes Beispiel für MySQL-Joint-Tabellen-Update-Daten
  • Beispielüberprüfung MySQL | Update-Feld mit demselben Wert zeichnet Binlog auf
  • Detaillierte Erläuterung des Ausführungsprozesses der MySQL-Update-Anweisung
  • Codebeispiele für MySQL-Batchoperationsanweisungen „Select“, „Insert“ und „Update“
  • Zusammenfassung der gemeinsamen Updatemethode für MySQL-Updates mehrerer Tabellen
  • Führt MySQL die Aktualisierungsanweisung erneut aus, wenn sie dieselben Daten enthält wie die ursprüngliche?
  • Erläuterung der MySQL-Transaktionsauswahl für die Aktualisierung und Datenkonsistenzverarbeitung
  • Mehrere Möglichkeiten zum Aktualisieren von Batches in MySQL
  • Detaillierte Erklärung zur Verwendung des MySQL-Parameters sql_safe_updates in der Produktionsumgebung
  • So beheben Sie den Fehler 1093 - Sie können in der FROM-Klausel in MySQL keine Zieltabelle für die Aktualisierung angeben
  • Mybatis führt Batch-Update-Methode aus (Oracle, MySQL)
  • Notieren Sie eine Falle bei der Aktualisierung der MySQL-Update-Anweisung

<<:  Centos7.4-Serverinstallation von Apache und Lösungen für während des Installationsvorgangs aufgetretene Probleme

>>:  VUE+Express+MongoDB-Frontend- und Backend-Trennung zur Realisierung einer Notizwand

Artikel empfehlen

Element verwendet Skripte, um automatisch neue Komponenten zu erstellen

Inhaltsverzeichnis Hintergrund Wie funktioniert d...

So verwenden Sie CSS, um mehrere Bilder horizontal in der Mitte anzuzeigen

Lassen Sie mich zunächst über die Implementierung...

js canvas realisiert Bilder mit abgerundeten Ecken

In diesem Artikel wird der spezifische Code von J...

XHTML 1.0-Referenz

Nach Funktion sortierenNN: Gibt an, welche frühere...

Verwenden Sie js in html, um die lokale Systemzeit abzurufen

Code kopieren Der Code lautet wie folgt: <div ...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.27 winx64

In diesem Artikel wird die Installations- und Kon...

Zusammenfassung der grundlegenden Verwendung des $-Symbols in Linux

Linux-Version: CentOS 7 [root@azfdbdfsdf230lqdg1b...

Lösung für den Fehler beim Kompilieren des LVGL-Emulators unter Linux

Inhaltsverzeichnis 1. Fehlerphänomen 2. Fehlerana...

So fragen Sie schnell 10 Millionen Datensätze in MySQL ab

Inhaltsverzeichnis Normale Paging-Abfrage So opti...

Kontinuierliche Bereitstellung mit Jenkins und Docker unter Docker

1. Was ist Continuous Delivery Der Ausgabeprozess...