Standardmäßig zeigt die SQLite-Befehlszeilenschnittstelle Abfrageergebnisse unter Verwendung einer durch senkrechte Striche getrennten Liste ohne Spaltenüberschriften an.
Dies kann in Ordnung sein, wenn Sie die Ergebnisse in einer Anwendung verwenden, die die Spaltennamen nicht benötigt, aber wenn Sie nur ein Mensch sind, kann es das Lesen der Daten erschweren, insbesondere wenn viele Spalten vorhanden sind.
Glücklicherweise gibt es eine schnelle Möglichkeit, die Spaltennamen in Ihren Abfrageergebnissen darzustellen.
Tatsächlich gibt es dafür mindestens ein paar Möglichkeiten, die ich in diesem Artikel erkläre.
Der .headers-Befehl
Die naheliegendste Möglichkeit, Spaltenüberschriften in Ihren Abfrageergebnissen anzuzeigen, ist die Verwendung von .headers
Befehl. Dies akzeptiert einen Parameter, und der Wert dieses Parameters muss entweder on
sein oder off
.
Eigentlich ziemlich einfach. Um Spaltenüberschriften zu aktivieren, verwenden Sie daher einfach .headers on
.
Hier ist ein Beispiel, wie Sie das tun und dann eine Abfrage ausführen:
.headers on
SELECT * FROM Products;
Ergebnis:
ProductId|ProductName|Price 1|Blue Widgets (6 Pack)|389.45 2|Widget Holder|139.5 3|Widget Opener|89.27 4|Foobar Set|120.0
Wie bereits erwähnt, können Sie Spaltenüberschriften mit .headers off
deaktivieren .
Hier ist dieselbe Abfrage, aber mit deaktivierten Spaltenüberschriften:
.headers off
SELECT * FROM Products;
Ergebnis:
1|Blue Widgets (6 Pack)|389.45 2|Widget Holder|139.5 3|Widget Opener|89.27 4|Foobar Set|120.0
Wenn Sie die Ergebnisse auch in Spalten anzeigen möchten, lesen Sie So zeigen Sie SQLite-Ergebnisse in Spalten an.
Zeilenmodus
Die SQLite-Befehlszeilen-Shell ermöglicht Ihnen auch die Verwendung des „Zeilen“-Modus. Wenn Sie dies tun, werden die Abfrageergebnisse vertikal angezeigt, sodass jede Spalte in einer neuen Zeile aufgeführt wird. Wenn Sie diesen Modus verwenden, werden auch die Spaltennamen im Format Spaltenname =Wert angezeigt .
Hier ist ein Beispiel:
.headers off
.mode line
SELECT * FROM Products;
Ergebnis:
ProductId = 1 ProductName = Blue Widgets (6 Pack) Price = 389.45 ProductId = 2 ProductName = Widget Holder Price = 139.5 ProductId = 3 ProductName = Widget Opener Price = 89.27 ProductId = 4 ProductName = Foobar Set Price = 120.0
Beachten Sie, dass ich Spaltenüberschriften explizit deaktiviert habe, aber sie wurden trotzdem ausgedruckt – mit .mode line
zeigt trotzdem die Spaltenüberschriften an. Wahrscheinlich gar nicht so schlecht. Stellen Sie sich vor, wie schwierig es wäre, zu entschlüsseln, welche Spalte jede Zeile darstellt, wenn wir die Spaltennamen nicht sehen könnten.