När du använder psql
för att köra frågor mot PostgreSQL kan vi använda \pset border
och \pset linestyle
kommandon för att ändra gränsen för tabellen som visar våra resultat.
Exempel på \pset border
Här är några exempel för att visa hur \pset border
kommandot påverkar kantformatet när du använder standard linestyle
inställning av ascii
.
Värdet som anges till \pset border
måste vara en siffra. Generellt gäller att ju högre siffra desto fler kanter och linjer kommer tabellerna att ha, men detta beror på det specifika formatet.
I HTML-format översätts detta direkt till border=
… attribut.
I de andra formaten, medan det är möjligt att använda högre siffror, är det bara värdena 0
(ingen ram), 1
(interna skiljelinjer) och 2
(bordsram) vettigt.
Kant 0
\pset linestyle ascii
\pset border 0
SELECT * FROM Pets;
Resultat:
petid pettypeid ownerid petname dob ----- --------- ------- ------- ---------- 1 2 3 Fluffy 2020-11-20 2 3 3 Fetch 2019-08-16 3 2 2 Scratch 2018-10-01 4 3 3 Wag 2020-03-15 5 1 1 Tweet 2020-11-28 6 3 4 Fluffy 2020-09-17 7 3 2 Bark 8 2 4 Meow (8 rows)
Kant 1
\pset linestyle ascii
\pset border 1
SELECT * FROM Pets;
Resultat:
petid | pettypeid | ownerid | petname | dob -------+-----------+---------+---------+------------ 1 | 2 | 3 | Fluffy | 2020-11-20 2 | 3 | 3 | Fetch | 2019-08-16 3 | 2 | 2 | Scratch | 2018-10-01 4 | 3 | 3 | Wag | 2020-03-15 5 | 1 | 1 | Tweet | 2020-11-28 6 | 3 | 4 | Fluffy | 2020-09-17 7 | 3 | 2 | Bark | 8 | 2 | 4 | Meow | (8 rows)
Border 2
\pset linestyle ascii
\pset border 2
SELECT * FROM Pets;
Resultat:
+-------+-----------+---------+---------+------------+ | petid | pettypeid | ownerid | petname | dob | +-------+-----------+---------+---------+------------+ | 1 | 2 | 3 | Fluffy | 2020-11-20 | | 2 | 3 | 3 | Fetch | 2019-08-16 | | 3 | 2 | 2 | Scratch | 2018-10-01 | | 4 | 3 | 3 | Wag | 2020-03-15 | | 5 | 1 | 1 | Tweet | 2020-11-28 | | 6 | 3 | 4 | Fluffy | 2020-09-17 | | 7 | 3 | 2 | Bark | | | 8 | 2 | 4 | Meow | | +-------+-----------+---------+---------+------------+ (8 rows)
Om \pset linestyle
Vi kan använda \pset linestyle
kommando för att ändra linjeritningsstilen för gränsen. Den kan ställas in på ascii
, old-ascii
eller unicode
.
Exempel:
\pset linestyle ascii
\pset linestyle old-ascii
\pset linestyle unicode
Här är en beskrivning av var och en:
ascii
stil använder vanliga ASCII-tecken. Nya rader i data visas med+
symbol i högermarginalen. När det radbrytande formatet radbryter data från en rad till nästa utan ett nyradstecken visas en prick (.
) visas i den högra marginalen på den första raden och igen i den vänstra marginalen på nästa rad.old-ascii
stil använder vanliga ASCII-tecken, med formateringsstilen som används i PostgreSQL 8.4 och tidigare. Nya rader i data visas med en:
symbol i stället för den vänstra kolumnavgränsaren. När data raderas från en rad till nästa utan ett nyradstecken visas en;
symbolen används i stället för den vänstra kolumnavgränsaren.unicode
stil använder Unicode box-ritning tecken. Nya rader i data visas med en retursymbol i högermarginalen. När data raderas från en rad till nästa utan ett nyradstecken, visas en ellipssymbol i den högra marginalen på den första raden och igen i den vänstra marginalen på nästa rad.
Om du behöver fler gränsformateringsalternativ, kolla in de vackra gränserna i psql patch.