MySQL-Fehler: Parameterindex außerhalb des gültigen Bereichs (1 > Anzahl der Parameter, also 0) —— Zusammenfassung der Fuzzy-Abfrage mit Platzhaltern in MySQL-Datenbanken Einführung: Heute hat die Konsole beim Verwenden von MySQL-Anweisungen zum Ausführen von Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgängen den folgenden Fehler gemeldet: „Parameterindex außerhalb des gültigen Bereichs (1 > Anzahl der Parameter, also 0).“ Übersetzt bedeutet dies: Die Ergebnisdaten sind 1, der wahre Wert sollte 0 sein, der Parameter liegt außerhalb der Grenzen und es tritt ein Fehler auf. Damit wird auch klar, wo uns ein Fehler unterlaufen ist – nämlich beim Parameter, also der Behandlung des Platzhalters „?“. Dieser Artikel analysiert die Fehler, die bei der Ausführung gängiger SQL-Anweisungen und bei der Verwendung der Like-Anweisung für Platzhalter-Fuzzy-Abfragen auftreten, und bietet Lösungen. 1. SQL-Anweisungen analysieren 1. Abfrageanalyse gängiger SQL-Anweisungen Lassen Sie uns zunächst die SQL-Anweisung analysieren, die ich zuvor verwendet habe: String SQL = "Wählen Sie Count(*) aus Tab_Route aus, wobei CID = ?"; Hinweis : Wir verwenden direkt das Platzhalterzeichen 2. So verarbeiten Sie gängige SQL-Abfrageanweisungen Sollte hierbei ein Fehler auftreten, beheben Sie diesen bitte wie folgt: Überprüfen Sie das Format des Platzhalters String SQL = "Wählen Sie Count(*) aus Tab_Route aus, wobei CID = '?" ist. 3. Verwenden Sie die Platzhalteranalyse für Fuzzy-Abfrageanweisungen In ähnlicher Weise verwenden wir immer noch die obige Methode, um Fuzzy-Abfrageoperationen durchzuführen und schauen uns die SQL-Anweisung an, die fehlschlägt: String SQL = "Wählen Sie count(*) aus tab_route aus, wobei rname wie '%?%' ist; Das Ausführungsergebnis ist ein Fehler : Ergebnisanalyse : Die Ergebnisdaten sind 1, der wahre Wert sollte 0 sein, der Parameter liegt außerhalb der Grenzen und es tritt ein Fehler auf. Wir stellen klar, dass die folgende Aussage kein Problem darstellt: String SQL = Auswahl * von Tab_Route, wobei Rname wie „%张%“ ist; Damit wird auch klar, wo uns ein Fehler unterlaufen ist – nämlich beim Parameter, also der Behandlung des Platzhalters 2. Analyse der Fuzzy-Abfrage mit Platzhaltern in Like-Anweisungen 1. Anwendungsszenarien von Like-Anweisungen Die Verwendung des Platzhalters „Like“ zum Ausführen von Fuzzy-Abfragen begegnet uns in Projekten häufig, beispielsweise bei Fuzzy-Abfragen für Daten im Suchfeld. 2. Fuzzy-Abfrageanalyse Es ist nicht möglich concat(str1, str2, str3...) erzeugt einen neuen String 3. Korrekte Sätze String sql = "Wählen Sie count(*) aus tab_route, wobei rname wie concat('%',?,'%') lautet"; 3. MyBatis-ähnliche Fuzzy-Abfrage und Keyword-Unterscheidung Wenn Sie in MyBatis eine Fuzzy-Abfrage verwenden, beachten Sie bitte, dass das Schlüsselwort Wählen Sie * aus der Tabelle, in der der Name wie folgt lautet: concat('%',#{name},'%'); Wenn Sie ein Sortierfeld hinzufügen, beachten Sie bitte, dass das Schlüsselwort lautet: Wählen Sie * aus der Tabelle mit dem Namen wie concat('%',#{name},'%'), sortiert nach ${id}; Zusammenfassung: Dieser Artikel analysiert die Fehler, die bei der Ausführung gewöhnlicher SQL-Anweisungen und bei der Verwendung von Like-Anweisungen für Platzhalter-Fuzzy-Abfragen auftreten, und bietet entsprechende Lösungen. Gleichzeitig werden die Funktionsweise der Fuzzy-Abfrage in MyBatis und die Unterscheidung zwischen verschiedenen Schlüsselwörtern ergänzt. Der Weg zum Codieren ist lang, daher hoffe ich, dass Sie vorsichtig sind. Dies ist das Ende dieses Artikels über die Zusammenfassung der MySQL-Datenbank-ähnlichen Anweisungs-Platzhalter-Fuzzy-Abfrage. Weitere relevante MySQL-Fuzzy-Abfrage-ähnliche Inhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Analyse von 2 Token-Gründen und Beispielcode in der Webprojektentwicklung
>>: Einige Vorschläge zur Verbesserung der Nginx-Leistung
1. Anzeigeeffekt: 2. HTML-Struktur <div Klasse...
Übergeben von Werten zwischen Miniprogrammseiten ...
Ohne weitere Umschweife komme ich gleich zum Code...
Während der Installation von Ubuntu 18 trat das P...
Memo: Einfach erleben. Eintrag: Nr. 209 Diese Bei...
Codebeispiel: öffentliche Klasse JDBCDemo3 { öffe...
Kommen wir ohne weitere Umschweife direkt zum Cod...
Detaillierte Erklärung und Zusammenfassung der UR...
Der von ${param} übergebene Parameter wird als Te...
--Backup der Homepage 1.txt-Text 2. Scannen Sie da...
Um einen String in ein Array aufzuteilen, müssen ...
JDK-Downloadadresse: http://www.oracle.com/techne...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis 1. Grundprinzipien 2. Spezifis...
Inhaltsverzeichnis Was ist Docker Compose Anforde...