SQLite - typ danych
Typ danych SQLite to atrybut, który określa typ danych dowolnego obiektu. Każda kolumna, zmienna i wyrażenie ma powiązany typ danych w SQLite.
Tych typów danych można użyć podczas tworzenia tabel. SQLite używa bardziej ogólnego dynamicznego systemu typów. W SQLite typ danych wartości jest powiązany z samą wartością, a nie z jej kontenerem.
Klasy pamięci SQLite
Każda wartość przechowywana w bazie danych SQLite ma jedną z następujących klas pamięci -
Sr.No. | Klasa pamięci i opis |
---|---|
1 | NULL Wartość jest wartością NULL. |
2 | INTEGER Wartość jest liczbą całkowitą ze znakiem, przechowywaną w 1, 2, 3, 4, 6 lub 8 bajtach, w zależności od wielkości wartości. |
3 | REAL Wartość jest wartością zmiennoprzecinkową, przechowywaną jako 8-bajtowa liczba zmiennoprzecinkowa IEEE. |
4 | TEXT Wartość to ciąg tekstowy zapisany przy użyciu kodowania bazy danych (UTF-8, UTF-16BE lub UTF-16LE) |
5 | BLOB Wartość to zbiór danych przechowywanych dokładnie tak, jak zostały wprowadzone. |
Klasa pamięci SQLite jest nieco bardziej ogólna niż typ danych. Na przykład klasa pamięci INTEGER zawiera 6 różnych typów danych typu integer o różnych długościach.
Typ powinowactwa SQLite
SQLite obsługuje koncepcję type affinityna kolumnach. Każda kolumna może nadal przechowywać dane dowolnego typu, ale preferowaną klasą pamięci dla kolumny jest jejaffinity. Każda kolumna tabeli w bazie danych SQLite3 ma przypisane jedno z następujących podobieństw typu -
Sr.No. | Podobieństwo i opis |
---|---|
1 | TEXT Ta kolumna przechowuje wszystkie dane przy użyciu klas pamięci NULL, TEXT lub BLOB. |
2 | NUMERIC Ta kolumna może zawierać wartości wykorzystujące wszystkie pięć klas pamięci. |
3 | INTEGER Zachowuje się tak samo, jak kolumna z powinowactwem NUMERIC, z wyjątkiem wyrażenia CAST. |
4 | REAL Zachowuje się jak kolumna z powinowactwem NUMERIC, z wyjątkiem tego, że wymusza wartości całkowite w reprezentacji zmiennoprzecinkowej. |
5 | NONE Kolumna z powinowactwem NONE nie preferuje jednej klasy pamięci od innej i nie podejmuje się próby przekształcenia danych z jednej klasy do drugiej. |
Nazwy koligacji i typów SQLite
Poniższa tabela zawiera listę różnych nazw typów danych, których można używać podczas tworzenia tabel SQLite3 z odpowiednim zastosowanym powinowactwem.
Typ danych | Powinowactwo |
---|---|
|
LICZBA CAŁKOWITA |
|
TEKST |
|
ŻADEN |
|
REAL |
|
NUMERYCZNE |
Typ danych logicznych
SQLite nie ma oddzielnej klasy pamięci typu Boolean. Zamiast tego wartości logiczne są przechowywane jako liczby całkowite 0 (fałsz) i 1 (prawda).
Typ danych daty i godziny
SQLite nie ma oddzielnej klasy pamięci do przechowywania dat i / lub godzin, ale SQLite może przechowywać daty i godziny jako wartości TEXT, REAL lub INTEGER.
Sr.No. | Klasa pamięci i format daty |
---|---|
1 | TEXT Data w formacie takim jak „RRRR-MM-DD GG: MM: SS.SSS” |
2 | REAL Liczba dni od południa w Greenwich 24 listopada 4714 rpne |
3 | INTEGER Liczba sekund od 1970-01-01 00:00:00 UTC |
Możesz wybrać przechowywanie dat i godzin w dowolnym z tych formatów i swobodnie konwertować między formatami za pomocą wbudowanych funkcji daty i czasu.