Jak poprawnie wyświetlić plik .sqlite przy użyciu narzędzia sqlite?

16

Zainstalowałem program sqlite, aby wyświetlać typy plików z tym rozszerzeniem, jednak nawet po przeczytaniu dokumentacji pomocy i strony podręcznika wciąż nie rozumiem, w jaki sposób mogę pokazać mi, czego chcę. Jak dokładnie korzystasz z tego programu? Chcę tylko poprawnie wyświetlić plik tego rozszerzenia.

Używam Ubuntu GNOME 16.04 z GNOME 3.20.


źródło
1
Jakiego typu wynik lub widok chcesz? Są też eksploratory baz danych GUI, które, jak sądzę, byłyby łatwiejsze w obsłudze.
Bajt Dowódca
@ByteCommander: Zależy jakie typy są, czy możesz podać mi kilka przykładów? Poza tym tak naprawdę nie mam nic przeciwko, jeśli jest w CLI lub GUI.
2
BTW, czy na pewno chcesz, sqlitea nie sqlite3?
Andrea Lazzarotto
@AndreaLazzarotto: Nie wiem ... Wiem tylko, że mam .sqlitepliki utworzone przez Firefoksa, które chcę wyświetlić.
sqliteto stara wersja. Zdecydowanie polecam użyć, sqlite3ale prawdopodobnie już to zrobiłeś, jeśli zainstalowałeś cudowny, sqlitebrowserjak sugerowano w A. :)
Andrea Lazzarotto

Odpowiedzi:

32

Zacznijmy od bardziej przyjaznego dla użytkownika sposobu i użyj narzędzia GUI sqlitebrowser. Umożliwia łatwe przeglądanie bazy danych bez znajomości poleceń SQL.

Możesz zainstalować go za pomocą polecenia

sudo apt install sqlitebrowser

i uruchom go z menu programu uruchamiającego / kreski / aplikacji lub za pomocą polecenia

sqlitebrowser

W głównym oknie możesz kliknąć, Open databaseaby otworzyć *.sqliteplik. Następnie wyświetli coś takiego (tutaj wyświetla bazę danych dodatku Firefox do stosowania stylów użytkownika):

wprowadź opis zdjęcia tutaj

Już przeszedłem do Browse Datazakładki na lewym panelu, gdzie możesz teraz wyświetlić zawartość tabeli bazy danych. Wybierz tabelę do wyświetlenia w polu „Tabela:”.


Oczywiście możesz to również zrobić z wiersza poleceń, używając np sqlite3. Ta metoda wymaga znajomości co najmniej podstawowego zestawu poleceń SQL i jest bardziej odpowiednia dla zaawansowanych użytkowników lub jeśli potrzebujesz przeanalizować dane wyjściowe w skrypcie.

Instalujesz sqlite3za pomocą polecenia

sudo apt install sqlite3

a następnie uruchom go za pomocą następującego polecenia ( -columni -headeropcji dla lepszej czytelności danych wyjściowych, zobacz man sqlite3więcej informacji):

sqlite3 -column -header

Następnie otrzymasz interaktywny wiersz polecenia SQLite3, taki jak ten:

$ sqlite3 -column -header
SQLite version 3.11.0 2016-02-15 17:29:24
Enter ".help" for usage hints.
sqlite> 

Pierwszą rzeczą, którą musisz teraz zrobić, to otworzyć plik bazy danych. Dlatego możesz użyć .openpolecenia SQLite. Wpisz to w sqlite>monicie (ponownie używając tej samej bazy danych dodatków do Firefoksa jak powyżej, oczywiście podasz inną ścieżkę):

.open "/home/bytecommander/.mozilla/firefox/gtltfeay.default/stylish.sqlite"

Pamiętaj, że Tabuzupełnianie działa tutaj i pomoże ci wprowadzić ścieżkę do pliku bazy danych.

Teraz możesz zobaczyć listę załadowanych baz danych za pomocą .databasespolecenia (nazwa pliku jest obcięta, ponieważ jest tak długa):

sqlite> .databases
seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main             /home/bytecommander/.mozilla/firefox/gtltfeay.default/styl

Widzisz, że baza danych, którą właśnie otworzyliśmy, nazywa się teraz main.

W następnym kroku wymienimy wszystkie tabele main(domyślnej) bazy danych:

sqlite> .tables
style_meta  styles    

Widzimy dwie tabele style_metai styleswymienione.

Wyświetlmy style_metatabelę w całości ze wszystkimi kolumnami. Dlatego potrzebujemy polecenia SQL SELECT * FROM style_meta;(nie zapomnij średnika!):

sqlite> SELECT * FROM style_meta;
id          style_id    name        value      
----------  ----------  ----------  -----------
46          1           domain      lichess.org
47          1           type        site       
48          3           domain      lichess.org
49          3           type        site       
50          2           domain      lichess.org
51          2           type        site       
53          4           type        global     

Aby uzyskać pomoc za pomocą poleceń specyficznych dla sqlite3 na interaktywnej powłoki (polecenia zaczynające się od kropki), typ .helpu sqlite>wiersz lub przeczytać jego stronę podręcznika man sqlite3. Wszystkie pozostałe polecenia są wspólne SQL, należy poszukać podstawowego samouczka SQL, aby się ich nauczyć.

Możesz wyjść z interaktywnej sqlite3powłoki ponownie za pomocą .exitpolecenia lub Ctrl+ D.

Bajt Dowódca
źródło
1
Sugerowałbym .schemapolecenie, aby zobaczyć, jak tworzone są tabele i pola.
Andrea Lazzarotto,
Złe doświadczenia z sqlitebrowser. Zawiesił się, gdy uruchomiłem zapytanie lub gdy okno zostało przeniesione do tła. Następnie przełączono na narzędzie wiersza poleceń.
ka3ak 12.12.17
Dziękuję @Byte Commander za tak piękną i dokładną odpowiedź.
Forever