Typy danych w SQL
- Poprzednia strona isnull() w SQL
- Następna strona Serwer SQL
Typy danych używane przez Microsoft Access, MySQL oraz SQL Server i ich zakres.
Typy danych Microsoft Access
Typ danych | Opis | Przechowywanie |
---|---|---|
Text | Do tekstu lub kombinacji tekstu i liczb. Maksymalnie 255 znaków. | |
Memo |
Memo do przechowywania większej ilości tekstu. Maksymalnie 65,536 znaków. Uwaga: Memo pole nie można sortować. Jednak jest wyszukiwalne. |
|
Byte | Pozwala na liczby między 0 a 255. | 1 bajt |
Integer | Pozwala na liczby między -32,768 a 32,767. | 2 bajty |
Long | Pozwala na wszystkie liczby między -2,147,483,648 a 2,147,483,647. | 4 bajty |
Single | Liczba zmiennoprzecinkowa o jednej zmiennoprzecinkowej. Obsługuje większość liczb ułamkowych. | 4 bajty |
Double | Dwuwymiarowa liczba zmiennoprzecinkowa. Obsługuje większość liczb ułamkowych. | 8 bajtów |
Waluta |
Do waluty. Obsługuje 15 miejsc po przecinku, oraz 4 miejsca po przecinku w części ułamkowej. Uwaga: Możesz wybrać walutę kraju. |
8 bajtów |
AutoNumber | Pole AutoNumber automatycznie przypisuje liczby każdemu rekordowi, zazwyczaj zaczynając od 1. | 4 bajty |
Data/Czas | Do dat i czasu | 8 bajtów |
Yes/No |
Pole logiczne, które można wyświetlić jako Yes/No, True/False lub Wł/Wył. W kodzie używaj stałych True i False (równoważne 1 i 0) Uwaga: W polu Yes/No nie można wprowadzić wartości Null |
1 bit |
Ole Object | Można przechowywać obrazy, dźwięki, wideo lub inne BLOBs (Binary Large OBjects) | Maksymalnie 1 GB |
Hyperlink | Zawiera linki do innych plików, w tym stron internetowych. | |
Lookup Wizard | Pozwala utworzyć listę opcji do wyboru z poniższej listy. | 4 bajty |
Typy danych MySQL
W MySQL istnieją trzy główne typy: typy tekstu, liczbowe i daty/czasu.
Typ tekstu:
Typ danych | Opis |
---|---|
CHAR(rozmiar) | Zapisz stałą długości ciąg znaków (może zawierać litery, cyfry oraz znaki specjalne). W nawiasach kwadratowych określ długość ciągu. Maksymalnie 255 znaków. |
VARCHAR(rozmiar) |
Zapisz zmienną długości ciągów znaków (może zawierać litery, cyfry oraz znaki specjalne). W nawiasach kwadratowych określ maksymalną długość ciągu. Maksymalnie 255 znaków. 注释:如果值的长度大于 255,则被转换为 TEXT 类型。 |
TINYTEXT | Komentarz: Jeśli długość wartości jest większa niż 255, zostanie ona przekształcona do typu TEXT. |
TINYTEXT | Przechowuje ciąg znaków o maksymalnej długości 255 znaków. |
TEXT | Przechowuje ciąg znaków o maksymalnej długości 65,535 znaków. |
BLOB | Używane dla BLOBs (Binary Large OBjects). Przechowuje maksymalnie 65,535 bajtów danych. |
MEDIUMTEXT | Przechowuje ciąg znaków o maksymalnej długości 16,777,215 znaków. |
MEDIUMBLOB | Używane dla BLOBs (Binary Large OBjects). Przechowuje maksymalnie 16,777,215 bajtów danych. |
LONGTEXT | Przechowuje ciąg znaków o maksymalnej długości 4,294,967,295 znaków. |
LONGBLOBUżywane dla BLOBs (Binary Large OBjects). Przechowuje maksymalnie 4,294,967,295 bajtów danych.,ENUM(,xy |
z ,itp.) Pozwala na wprowadzenie listy możliwych wartości. Możesz wymienić maksymalnie 65535 wartości w liście ENUM. Jeśli wartość nie istnieje w liście, zostanie wprowadzona pusta wartość. |
Komentarz: Te wartości są przechowywane w kolejności, w której wprowadziłeś. | Możesz wprowadzić możliwe wartości w tym formacie: ENUM('X','Y','Z') |
Typ Number:
Typ danych | Opis |
---|---|
SETrozmiar) | Podobne do ENUM, SET może zawierać maksymalnie 64 elementy listy, ale SET może przechowywać więcej niż jedną wartość. |
SMALLINT(rozmiar) | -32768 do 32767 standardowe. 0 do 65535 nieskładane *. Maksymalna liczba miejsc określona w nawiasach. |
MEDIUMINT(rozmiar) | -8388608 do 8388607 standardowe. 0 do 16777215 nieskładane *. Maksymalna liczba miejsc określona w nawiasach. |
INT(rozmiar) | -2147483648 do 2147483647 standardowe. 0 do 4294967295 nieskładane *. Maksymalna liczba miejsc określona w nawiasach. |
BIGINT(rozmiar) | -9223372036854775808 do 9223372036854775807 standardowe. 0 do 18446744073709551615 nieskładane *. Maksymalna liczba miejsc określona w nawiasach. |
FLOAT(rozmiar,d) | Liczby z浮点小数点。Maksymalna liczba miejsc określona w nawiasach. Maksymalna liczba miejsc po przecinku określona w parametrze d. |
DOUBLE(rozmiar,d) | Duże liczby z przecinkiem ruchomym. W nawiasach okrągłych określa się maksymalną liczbę miejsc. W parametrze d określa się maksymalną liczbę miejsc po przecinku. |
DECIMAL(rozmiar,d) | Typ DOUBLE przechowywany jako ciąg znaków, który pozwala na stałą przecinkową. |
*Te typy liczb całkowitych mają dodatkową opcję UNSIGNED. Zwykle liczby całkowite mogą być ujemne lub dodatnie. Jeśli doda się atrybut UNSIGNED, zakres zacznie się od 0, zamiast od pewnej liczby ujemnej.
Typ Date:
Typ danych | Opis |
---|---|
DATE() |
Data. Format: YYYY-MM-DD Komentarz: Obsługiwany zakres to od '1000-01-01' do '9999-12-31' |
DATETIME() |
*Kompozycja daty i czasu. Format: YYYY-MM-DD HH:MM:SS Komentarz: Obsługiwany zakres to od '1000-01-01 00:00:00' do '9999-12-31 23:59:59' |
TIMESTAMP() |
*Czas znacznika. Wartości TIMESTAMP przechowują opis od Unix epoch ('1970-01-01 00:00:00' UTC) do teraz. Format: YYYY-MM-DD HH:MM:SS Komentarz: Obsługiwany zakres to od '1970-01-01 00:00:01' UTC do '2038-01-09 03:14:07' UTC |
TIME() |
Czas. Format: HH:MM:SS Komentarz: Obsługiwany zakres to '-838:59:59' do '838:59:59'. |
YEAR() |
Rok w formacie 2 lub 4 miejsc. Komentarz: Dopuszczalne wartości dla formatu 4 miejsc: od 1901 do 2155. Dopuszczalne wartości dla formatu 2 miejsc: od 70 do 69, co oznacza lata od 1970 do 2069. |
* Chociaż DATETIME i TIMESTAMP zwracają ten sam format, działają zupełnie inaczej. W zapytaniach INSERT lub UPDATE, TIMESTAMP automatycznie ustawia się na bieżącą datę i czas. TIMESTAMP akceptuje różne formaty, takie jak YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD lub YYMMDD.
Typ danych SQL Server
Ciąg znaków z liter:
Typ danych | Opis | Przechowywanie |
---|---|---|
char(n) | Ciąg znaków o stałej długości. Maksymalnie 8,000 znaków. | n |
varchar(n) | Ciąg znaków o zmiennej długości. Maksymalnie 8,000 znaków. | |
varchar(max) | Ciąg znaków o zmiennej długości. Maksymalnie 1,073,741,824 znaków. | |
text | Ciąg znaków o zmiennej długości. Maksymalnie 2GB danych znakowych. |
Ciąg znaków Unicode:
Typ danych | Opis | Przechowywanie |
---|---|---|
nchar(n) | Dane Unicode o stałej długości. Maksymalnie 4,000 znaków. | |
nvarchar(n) | Dane Unicode o zmiennej długości. Maksymalnie 4,000 znaków. | |
nvarchar(max) | Dane Unicode o zmiennej długości. Maksymalnie 536,870,912 znaków. | |
ntext | Dane Unicode o zmiennej długości. Maksymalnie 2GB znaków. |
Typ Binary:
Typ danych | Opis | Przechowywanie |
---|---|---|
bit | Zawiera 0, 1 lub NULL | |
binary(n) | Dane binarne o stałej długości. Maksymalnie 8,000 bajtów. | |
varbinary(n) | Dane binarne o zmiennej długości. Maksymalnie 8,000 bajtów. | |
varbinary(max) | Dane binarne o zmiennej długości. Maksymalnie 2GB bajtów. | |
image | Dane binarne o zmiennej długości. Maksymalnie 2GB. |
Typ Number:
Typ danych | Opis | Przechowywanie |
---|---|---|
tinyint | Zawiera wszystkie liczby między 0 a 255. | 1 bajt |
smallint | Zawiera wszystkie liczby między -32,768 a 32,767. | 2 bajty |
int | Zawiera wszystkie liczby między -2,147,483,648 a 2,147,483,647. | 4 bajty |
bigint | Zawiera wszystkie liczby między -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807. | 8 bajtów |
decimal(p,s) |
Liczby o stałej precyzji i proporcji. Zawiera liczby od -10^38 +1 do 10^38 -1. Parametr p wskazuje maksymalną liczbę miejsc po przecinku, które mogą być przechowywane po stronie lewej i prawej. Wartość p musi być z przedziału 1 do 38. Domyślną wartością jest 18. Parametr s wskazuje maksymalną liczbę miejsc po przecinku, które mogą być przechowywane po stronie lewej. Wartość s musi być z przedziału 0 do p. Domyślną wartością jest 0. |
5-17 bajtów |
numeric(p,s) |
Liczby o stałej precyzji i proporcji. Zawiera liczby od -10^38 +1 do 10^38 -1. Parametr p wskazuje maksymalną liczbę miejsc po przecinku, które mogą być przechowywane po stronie lewej i prawej. Wartość p musi być z przedziału 1 do 38. Domyślną wartością jest 18. Parametr s wskazuje maksymalną liczbę miejsc po przecinku, które mogą być przechowywane po stronie lewej. Wartość s musi być z przedziału 0 do p. Domyślną wartością jest 0. |
5-17 bajtów |
smallmoney | Dane monetarne między -214,748.3648 a 214,748.3647. | 4 bajty |
money | Dane monetarne między -922,337,203,685,477.5808 a 922,337,203,685,477.5807. | 8 bajtów |
float(n) |
Liczby zmiennoprzecinkowe o precyzji od -1.79E + 308 do 1.79E + 308. Parametr n wskazuje, czy pole zapisuje 4 bajty czy 8 bajtów. float(24) zapisuje 4 bajty, a float(53) zapisuje 8 bajtów. Domyślną wartością n jest 53. |
4 lub 8 bajtów |
real | Liczby zmiennoprzecinkowe z precyzją浮 from -3.40E + 38 do 3.40E + 38. | 4 bajty |
Typ Date:
Typ danych | Opis | Przechowywanie |
---|---|---|
datetime | Od 1 stycznia 1753 roku do 31 grudnia 9999 roku, precyzja 3.33 milisekund. | 8 bajtów |
datetime2 | Od 1 stycznia 1753 roku do 31 grudnia 9999 roku, precyzja 100 nanosekund. | 6-8 bajtów |
smalldatetime | Od 1 stycznia 1900 roku do 6 czerwca 2079 roku, precyzja 1 minuty. | 4 bajty |
date | Przechowywanie tylko daty. Od 1 stycznia 0001 roku do 31 grudnia 9999 roku. | 3 bajty |
time | Przechowywanie tylko czasu. Precyzja 100 nanosekund. | 3-5 bajtów |
datetimeoffset | Takie jak datetime2, z dodatkowym offsetem strefy czasowej. | 8-10 bajtów |
timestamp | Przechowywanie unikalnych liczb, które aktualizują się przy każdym tworzeniu lub modyfikowaniu wiersza. Timestamp oparty na wewnętrznym zegarze, nie odpowiada rzeczywistemu czasowi. Każda tabela może mieć tylko jeden zmienną timestamp. |
Inne typy danych:
Typ danych | Opis |
---|---|
sql_variant | Przechowywanie danych różnych typów do 8,000 bajtów, oprócz text, ntext oraz timestamp. |
uniqueidentifier | Przechowywanie unikalnych identyfikatorów (GUID). |
xml | Przechowywanie danych sformatowanych w formacie XML. Maksymalnie 2GB. |
cursor | Przechowywanie odniesień do wskaźników używanych do operacji na bazie danych. |
table | Przechowywanie wyników zestawów danych do późniejszej obróbki. |
- Poprzednia strona isnull() w SQL
- Następna strona Serwer SQL