poniedziałek, 24 września 2018

SQLite pobierania danych z tabeli bazy danych


SQLite - SELECT Query

Instrukcja SQLite SELECT służy do pobierania danych z tabeli bazy danych SQLite, która zwraca dane w postaci tabeli wyników. Te tabele wyników są również nazywane zestawami wyników.
Składnia
Poniżej znajduje się podstawowa składnia instrukcji SQLite SELECT.
SELECT kolumna1, kolumna2, kolumnaN FROM nazwa_tabeli;
Tutaj kolumna1, kolumna2 ... to pola tabeli, której wartości chcesz pobrać. Jeśli chcesz pobrać wszystkie pola dostępne w tabeli to możesz użyć następującej składni -
SELECT * FROM nazwa_tabeli;

Przykład
Rozważ tabelę PRACOWNIK z następującymi zapisami -
1|Adam|32|Warszawa|2000.0
2|Piotr|25|Piaseczno|1500.0
3|Tomasz|23|Grodzisk|2000.0
4|Marek|25|Płock|6500.0
5|Dawid|27|Halinów|8500.0
6|Katarzyna|22|Warszawa|4500.0
7|Jan|24|Kraków|4500.0
Poniżej znajduje się przykład pobierania i wyświetlania wszystkich tych rekordów za pomocą instrukcji SELECT. Tutaj pierwsze trzy polecenia zostały użyte do ustawienia poprawnie sformatowanego wyjścia.
sqlite>.header on
sqlite>.mode column
sqlite> SELECT * FROM PRACOWNIK;
Na koniec otrzymasz następujący wynik.
sqlite> .header on
sqlite> .mode column
sqlite> select * from pracownik;
id          nazwisko    wiek        adres       pensja
----------  ----------  ----------  ----------  ----------
1           Adam        32          Warszawa    2000.0
2           Piotr       25          Piaseczno   1500.0
3           Tomasz      23          Grodzisk    2000.0
4           Marek       25          Płock       6500.0
5           Dawid       27          Halinów     8500.0
6           Katarzyna   22          Warszawa    4500.0
7           Jan         24          Kraków      4500.0
sqlite>
Jeśli chcesz pobrać tylko wybrane pola tabeli PRACOWNIK, użyj następującego zapytania -
sqlite> SELECT ID, NAZWISKO, PENSJA FROM PRACOWNIK;
Powyższe zapytanie da następujący wynik.
id          nazwisko    pensja
----------  ----------  ----------
1           Adam        2000.0
2           Piotr       1500.0
3           Tomasz      2000.0
4           Marek       6500.0
5           Dawid       8500.0
6           Katarzyna   4500.0
7           Jan         4500.0

Ustawianie wyjściowej szerokości kolumny

Czasami w przypadku polecenia .mode column napotkasz problem związany z obciętym wyjściem, co dzieje się z powodu domyślnej szerokości wyświetlanej kolumny. Możesz tylko ustawić szerokość wyświetlanej kolumny za pomocą polecenia .width num, num .... w następujący sposób:
sqlite>.width 10, 20, 10
sqlite>SELECT * FROM PRACOWNIK;
Powyższe polecenie .width ustawia szerokość pierwszej kolumny na 10, szerokość drugiej kolumny na 20, a szerokość na trzeciej kolumny na 10. Wreszcie, powyższa instrukcja SELECT da następujący wynik.
id          nazwisko              wiek        adres       pensja
----------  --------------------  ----------  ----------  ----------
1           Adam                  32          Warszawa    2000.0
2           Piotr                 25          Piaseczno   1500.0
3           Tomasz                23          Grodzisk    2000.0
4           Marek                 25          Płock       6500.0
5           Dawid                 27          Halinów     8500.0
6           Katarzyna             22          Warszawa    4500.0
7           Jan                   24          Kraków      4500.0

Informacje o schemacie

Ponieważ wszystkie polecenia dot są dostępne w wierszu poleceń SQLite, dlatego podczas programowania z SQLite użyjesz poniższej instrukcji SELECT z tabelą sqlite_master do wyświetlenia wszystkich tabel utworzonych w bazie danych.
sqlite> SELECT tbl_name FROM sqlite_master WHERE type = 'table';
Zakładając, że masz tylko tabelę PRACOWNIK w pliku testDB.db, otrzymasz następujący wynik.
tbl_name
----------
pracownik
dzial
Możesz wyświetlić pełne informacje o tabeli PRACOWNICY w następujący sposób:
sqlite> SELECT sql FROM sqlite_master WHERE type = 'table' AND tbl_name = 'PRACOWNIK';
Zakładając, że masz tylko tabelę PRACOWNIK w pliku testDB.db, otrzymasz następujący wynik.
CREATE TABLE pracownik(
id int primary key not null,
nazwisko text not null,
wiek int not null,
adres char(50),
pensja real
)


Brak komentarzy:

Prześlij komentarz