„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie verkette ich Strings in SQL-Abfragen sicher mit Go?

Wie verkette ich Strings in SQL-Abfragen sicher mit Go?

Veröffentlicht am 03.11.2024
Durchsuche:864

How to Safely Concatenate Strings in SQL Queries with Go?

Verketten von Zeichenfolgen in SQL-Abfragen in Go

Während Text-SQL-Abfragen eine einfache Methode zum Abfragen von Datenbanken bieten, ist es wichtig, den richtigen Ansatz zum Verketten von Zeichenfolgenliteralen mit Werten zu verstehen um Syntaxfehler und Typkonflikte zu vermeiden.

Die bereitgestellte Abfragesyntax:

query := `SELECT column_name FROM table_name
        WHERE column1_name = %d AND column2_name = %d` % (val1, val2)

führt aufgrund der Verwendung von Tupeln im Python-Stil zu einem Syntaxfehler. Verwenden Sie stattdessen fmt.Sprintf, um die Zeichenfolge und die Werte zu verketten:

query := fmt.Sprintf(`SELECT column_name FROM table_name
                     WHERE column1_name = %d AND column2_name = %d`, val1, val2)

Alternativ können Sie db.Query verwenden, um Zeichenfolgen ohne Zeichenfolgeninterpolation zu verketten:

query := `SELECT column_name FROM table_name
        WHERE column1_name = %d AND column2_name = %d`

rows, err := db.Query(query, val1, val2)

Denken Sie daran, Injektionsschwachstellen zu beheben, indem Sie vorbereitete Anweisungen anstelle von String-Interpolation verwenden.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3