SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Jak zawijać długie wiersze tekstu w wynikach SQLite

Jeśli korzystasz z jednego z tabelarycznych trybów wyjściowych SQLite, możesz zmagać się z długimi wierszami tekstu, które powodują, że wszystkie kolejne kolumny są wypychane daleko w prawo. Może to spowodować, że będziesz musiał przewijać na boki podczas przeglądania danych.

Na szczęście istnieje proste rozwiązanie.

Możesz użyć --wrap opcja, aby ustawić maksymalną szerokość każdej kolumny. Każda kolumna, która zawiera tekst dłuższy niż ten, zostanie zawinięta do następnego wiersza.

Możesz także użyć --wordwrap on lub jego skrót -ww aby upewnić się, że słowa nie zostaną ucięte w połowie.

Przykład

Załóżmy, że ustawiliśmy tryb wyjścia na table :

.mode table

Na tym etapie nadal nie określiliśmy żadnych opcji zawijania.

Dlatego, gdy wybieramy kolumny z długim tekstem, nie opakowanie:

SELECT * FROM Album LIMIT 2;

Wynik:

+---------+---------------------------------------+----------+
| AlbumId |                 Title                 | ArtistId |
+---------+---------------------------------------+----------+
| 1       | For Those About To Rock We Salute You | 1        |
| 2       | Balls to the Wall                     | 2        |
+---------+---------------------------------------+----------+

Teraz ustawmy opcję zawijania:

.mode --wrap 20

Teraz uruchommy zapytanie ponownie:

SELECT * FROM Album LIMIT 2;

Wynik:

+---------+----------------------+----------+
| AlbumId |        Title         | ArtistId |
+---------+----------------------+----------+
| 1       | For Those About To R | 1        |
|         | ock We Salute You    |          |
+---------+----------------------+----------+
| 2       | Balls to the Wall    | 2        |
+---------+----------------------+----------+

Widzimy, że pierwsza linia została zawinięta zgodnie z naszym --wrap ustawienia.

W tym przykładzie nie określiłem zawijania słów, więc w tym przypadku słowo „Rock” zostało podzielone – część pozostała w pierwszej linii, a część zawinięta do następnej linii.

Możemy to obejść za pomocą --wordwrap on lub jego skrót -ww :

.mode -wrap 20 -ww

To to samo, co wykonanie następujących czynności:

.mode -wrap 20 --wordwrap on

Teraz uruchommy zapytanie ponownie:

SELECT * FROM Album LIMIT 2;

Wynik:

+---------+---------------------+----------+
| AlbumId |        Title        | ArtistId |
+---------+---------------------+----------+
| 1       | For Those About To  | 1        |
|         | Rock We Salute You  |          |
+---------+---------------------+----------+
| 2       | Balls to the Wall   | 2        |
+---------+---------------------+----------+

Tym razem słowo „Rock” jest zawijane do następnej linii, a nie ucinane.

Inna opcja:qbox Tryb

Inną opcją zawijania wierszy tekstu jest użycie qbox tryb wyjścia:

.mode qbox

To jest skrót do następujących:

.mode box --wrap 60 --quote

Więc to zawija wiersze po 60 znakach i cytuje łańcuchy jak literał SQL.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLiteDiskIOException:kod błędu 10:błąd we/wy dysku powraca w ICS i Samsung Nexus w DROP TABLE

  2. Indeks oparty na wyrażeniach SQLite

  3. dane załadowane z bazy danych SQLitE nie są zapisywane w klasie modelu ArrayList android

  4. identyfikatory wierszy sqlite nie pasują do widoku listy — ANDROID

  5. Utwórz tabelę tymczasową w SQLite