Som standard viser SQLite-kommandolinjegrænsefladen forespørgselsresultater ved hjælp af en rørsepareret liste uden kolonneoverskrifter.
Dette kan være fint, hvis du bruger resultaterne i et program, der ikke har brug for kolonnenavnene, men hvis du bare er et menneske, kan det gøre det svært at læse dataene, især hvis der er mange kolonner.
Heldigvis er der en hurtig måde at præsentere kolonnenavnene på i dine forespørgselsresultater.
Faktisk er der i det mindste et par måder at gøre dette på, og jeg forklarer dem i denne artikel.
.headers-kommandoen
Den mest oplagte måde at vise kolonneoverskrifter i dine forespørgselsresultater er med .headers
kommando. Dette accepterer én parameter, og værdien af denne parameter skal enten være on
eller off
.
Ret simpelt egentlig. Derfor, for at aktivere kolonneoverskrifter, skal du blot bruge .headers on
.
Her er et eksempel på at gøre det og derefter køre en forespørgsel:
.headers on
SELECT * FROM Products;
Resultat:
ProductId|ProductName|Pris1|Blå widgets (6-pack)|389.452|Widget-holder|139.53|Widget-åbner|89.274|Foobar-sæt|120.0
Som nævnt kan du deaktivere kolonneoverskrifter ved at bruge .headers off
.
Her er den samme forespørgsel, men med kolonneoverskrifter deaktiveret:
.headers off
SELECT * FROM Products;
Resultat:
1|Blå widgets (6-pack)|389.452|Widget-holder|139.53|Widget-åbner|89.274|Foobar-sæt|120.0
Hvis du også vil vise resultaterne i kolonner, se Sådan vises SQLite-resultater i kolonner.
Linjetilstand
SQLite-kommandolinjeskallen giver dig også mulighed for at bruge "line"-tilstand. Når du gør dette, vises forespørgselsresultaterne lodret, så hver kolonne vises på en ny linje. Når du bruger denne tilstand, vises kolonnenavnene også med formatet kolonnenavn =værdi .
Her er et eksempel:
.headers off
.mode line
SELECT * FROM Products;
Resultat:
ProductId =1ProductName =Blue Widgets (6 Pack) Price =389,45 ProductId =2ProductName =Widget Holder Price =139,5 ProductId =3ProductName =Widget Opener Price =89,27 ProductId =4ProductName =Foobar Set Price 0 =120.Bemærk, at jeg eksplicit deaktiverede kolonneoverskrifter, men de blev stadig udskrevet – ved hjælp af
.mode line
viser kolonneoverskrifterne alligevel. Det er nok ikke så slemt. Forestil dig, hvor svært det ville være at prøve at tyde, hvilken kolonne hver linje repræsenterede, hvis vi ikke kunne se kolonnenavnene.