Untersuchen von Ad-hoc-Abfragen im SQL-Paket von Go
Während die Dokumentation darauf hinweist, dass das Abfragen von Daten in Go mithilfe des SQL-Pakets die Kenntnis der Spaltenanzahl und erfordert Typen zur Kompilierzeit, das ist nicht unbedingt richtig. Der Typ sql.Rows bietet eine Lösung für flexible und Ad-hoc-SQL-Abfragen.
Dynamischer Spaltenmetadatenabruf
Die Columns-Methode in sql.Rows stellt eine Liste der bereit Ergebnisspaltennamen. Dadurch können Sie die Anzahl der von einer beliebigen Abfrage zurückgegebenen Spalten dynamisch bestimmen.
Scannen unbekannter Datentypen
Die Scan-Methode unterstützt das Scannen von Werten unbekannter Typen in entweder a Rohbyte-Slice (*[]Byte) oder ein Interface{}-Wert. Dadurch können Sie Spaltendaten abrufen, ohne ihren Typ vorab zu definieren.
Arbeiten mit Ad-hoc-Abfragen
Durch die Kombination dieser Techniken können Sie Ad-hoc-Abfragen ausführen und Daten abrufen in ein Segment von Interface{}-Werten:
columnNames, err := rows.Columns()
if err != nil {
// Handle error
}
columns := make([]interface{}, len(columnNames))
columnPointers := make([]interface{}, len(columnNames))
for i := 0; i Danach enthält das Spalten-Slice die decodierten Werte für alle Spalten in der Ergebniszeile. Durch die Nutzung der Columns- und Scan-Methoden können Sie Ad-hoc-Abfragen im SQL-Paket von Go effektiv verarbeiten.
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