You are on page 1of 17

TYPY DANYCH

Mateusz Antecki
Szymon Malida
Mikołaj Nowak
Dawid Sławski
- Microsoft SQL Server
DO
NAJPOPULARNIEJSZYC - MySQL
H SYSTEMÓW - Oracle
ZARZĄDZANIA BAZĄ - PostgreSQL
DANYCH NALEŻĄ
Typy danych SZBD Oracle #1

CHAR - Jest to typ danych znakowy o stałej VARCHAR2- Jest to ciąg znaków o
określonej długości. Oznacza to, że typ ten służy zmiennej długości. Również należy go
do przechowywania ciągów znaków czyli napisów, zadeklarować wraz z długością jednak nie jest to
liter, wyrazów, zdań etc. Należy go zadeklarować stała długość a maksymalna długość ciągu. Nie
wraz z długością. Jako, że jest to ciąg o stałej występuje w tym przypadku wypełnienie
długości to jeżeli zadeklarujemy CHAR o długości pozostałej przestrzeni spacjami.
10 bajtów a wypełnimy go tylko 4 znakami
pozostałe znaków 6 zostanie wypełnione białymi
znakami.
Typy danych SZBD Oracle #2

DATE - Jest do typ danych który przechowuje TIMESTAMP - Typ danych TIMESTAMP
datę rozumianą jako rok, dzień, miesiąc, godzinę, jest rozszerzeniem typu danych DATE.
minutę i sekundę. Nie przechowuje natomiast Przechowuje rok, miesiąc, dzień, godziny, minuty,
milisekund czy strefy czasowej. Aby utworzyć sekundy oraz części sekund i strefę czasową. Ten
kolumnę o typie datowym należy podać słowo typ danych jest przydatny do przechowywania
kluczowe: dokładnych wartości czasu.
Typy danych SZBD Oracle #3

NUMBER - Kolejnym bardzo


ważnym typem danych jest
NUMBER który służy jak nazwa
wskazuje do przechowywania
wartości numerycznych. W
kolumnie NUMBER możemy
przechowywać zarówno liczby
całkowite jak i
zmiennoprzecinkowe. Maksymalna
długość NUMBER to 38 cyfr.. Przy
deklarowaniu kolumny typu
NUMBER należy podać jej precyzję
jak na przykładzie po prawej:
Typy danych SZBD Oracle #4

BLOB - czyli ang. Binary Large Object służy CLOB - czyli ang. Character Large Object
do przechowywania dużych plików binarnych służy do przechowywania dużych plików
takich jak najróżniejsze: zdjęcia, dokumenty, czy tekstowych. Jako, że inne typy znakowe jak CHAR
jakiekolwiek inne formaty plików. Maksymalna czy VARCHAR ograniczone są do 4000 bajtów to
wielkość tego pola to 128 terabajtów. CLOB często wykorzystywany jest do
(Przechowywanie tak dużych plików w bazie zazwyczaj nie przechowywania dłuższych ciągów znaków.
jest optymalnym rozwiązaniem dlatego w praktyce raczej
maksymalna wielość tego pola to również 128
stosuje się z koncepcję, że w bazie zapisujemy jedynie
ścieżkę do pliku natomiast sam plik znajduje na jakimś
terabajtów.
zasobie np. ftp. Typ ten nie jest wykorzystywany ale warto (Typ często wykorzystywany gdy potrzebujemy
wiedzieć, że występuje.) przechowywać dłuższe ciągi znaków niż 4000 bajtów lub
2000 znaków.)
Typy danych SZBD MySQL #1
TINYINT - Typ danych numerycznych, który jest SMALLING - służy do przechowywania liczb całkowitych
używany do przechowywania liczb całkowitych. 1-bajtowe większych od TINYINT. 2-bajtowa wartość całkowita.
pole, przechowujące wartości całkowite bez znaku z Zakres wartości bez znaku od 0 do 65 535 lub ze
przedziału od 0 do 255 lub ze znakiem z przedziału od - znakiem od -32 768 do 32 768 .
127 do 127.
Typy danych SZBD MySQL #2
MEDIUMINT - Typ danych numerycznych, służy do INT - 4-bajtowa wartość całkowita. Zakres wartości ze
przechowywania liczb całkowitych. 3-bajtowa wartość znakiem od -2 147 483 648 do 2 147 483 647 lub bez
całkowita. Zakres wartości od 0 do 16 777 215 lub ze znaku od 0 do 4 294 967 295.
znakiem od -8 388 608 do 8 388 608.
Typy danych SZBD MySQL #3
BIGINT - 8-bajtowa wartość całkowita. Typ BIGINT FLOAT (dokładność) - Liczba zmiennoprzecinkowa z
jest używany podczas przeprowadzania obliczeń. precyzją wyrażoną liczbą bajtów. Dwie wartości
Stosując pola tego typu we własnej bazie danych należy akceptowane jako precyzja to 4 i 8. Użycie 4 tworzy
uważać, aby ich wartości nie były zbyt duże, ponieważ liczbę zmiennoprzecinkową o pojedynczej precyzji,
użyte w obliczeniach mogą doprowadzić do błędu natomiast 8 – liczbę zmiennoprzecinkową o podwójnej
przepełnienia. precyzji. Szczegóły dotyczące tych dwóch typów danych
opisują pola FLOAT i DOUBLE.
Typy danych SZBD MySQL #4
FLOAT - 4-bajtowa liczba zmiennoprzecinkowa z DECIMAL - Pole zmiennoprzecinkowe o takiej samej
zakresu od -1.402823466E+38 do -1.175494351E-38, 0 pojemności jak DOUBLE. Liczba, zamiast zostać
i 1.175494351E-38 do 3.402823466E+38 zredukowana do postaci szesnastkowej, pamiętana jest
w formacie znakowym

DOUBLE - 8-bajtowa liczba zmiennoprzecinkowa


przechowująca wartości z zakresu od -
1.7976931348623157E+308 do -
2.2250738585072014E-308, 0, i
2.2250738585072014E-308 do
1.7976931348623157E+308
Typy danych SZBD MySQL #5
Typy datowe Typy DATE, TIME i DATETIME wewnętrznie są
● DATE-Posiada rozmiar 3 bajtów oraz zapisuje daty w zapisywane jako odpowiednio sformatowane literały
formacie YYYY-MM-DD
● DATETIME- Przechowuje datę i czas.Typ DATETIME jest łańcuchowe, ale dla użytkownika funkcjonują jako
tożsamy z TIMESTAMP obiekty przechowujące datę, czas, lub datę i czas.

● TIME- Przechowuje czas


Typy danych SZBD MySQL #6
Baza typu „płaskiego” (flat file) –wszystkie dane w
pojedynczej tabeli.

•Dane są umieszczane w rekordach o określonej


strukturze, z polami o z góry określonej długości i typie

•Każdy rekord ma tą samą długość

•Rekordy nie muszą być posortowane

•Trudne wyszukiwanie –aby odszukać rekord trzeba


przeszukać cały plik (struktura nieoptymalna)

Zastosowanie np. baza płyt CD/DVD:


Typy danych SZBD Microsoft SQL Server #1
Typy całkowite (integer types) w bazie danych 3. tinyint (Tiny Integer):
Microsoft SQL Server to kategorie danych, które służą do ● Jest to 1-bajtowy typ całkowity.
przechowywania liczb całkowitych, czyli liczb bez części ● Zakres wartości wynosi od 0 do 255.
dziesiętnej. Do poszczególnych typów całkowitych w Microsoft ● Używany, gdy przechowywane liczby są małe i
SQL Server należą: nieujemne.
1. int (Integer): 4. bigint (Big Integer):
● Jest to 4-bajtowy typ całkowity. ● Jest to 8-bajtowy typ całkowity.
● Zakres wartości wynosi od -2 147 483 648 do 2 147 483
● Zakres wartości wynosi od -9 223 372 036 854 775
647.
808 do 9 223 372 036 854 775 807.
● Najczęściej używany do przechowywania liczb
● Używany, gdy potrzebna jest obsługa bardzo dużych
całkowitych o średniej wielkości zakresu.
liczb całkowitych.
1. smallint (Small Integer):
● Jest to 2-bajtowy typ całkowity.
● Zakres wartości wynosi od -32 768 do 32 767.
● Zajmuje mniej miejsca w pamięci niż int, co jest korzystne,
gdy potrzebna jest mniejsza precyzja.
Typy danych SZBD Microsoft SQL Server #2
Decimal and Numeric Types (Typy dziesiętne i Numeric:
numeryczne): ● numeric(p, s) to synonim decimal(p, s). Oba te typy są tożsame i można
Typy danych decimal i numeric w bazie danych Microsoft SQL Server służą do używać ich zamiennie.
przechowywania liczb zmiennoprzecinkowych o stałej precyzji. Oznacza to, że te ● Oznaczenia decimal i numeric są używane zamiennie w SQL Server, a
typy pozwalają na przechowywanie liczb z częścią dziesiętną, a precyzja (liczba wybór pomiędzy nimi jest kwestią preferencji.
miejsc po przecinku) dla każdej wartości liczbowej jest stała.

Przykłady deklaracji zmiennych o typie decimal/numeric w SQL


Decimal: Server:
● decimal(p, s) to typ danych, gdzie p oznacza całkowitą liczbę cyfr, a s
to liczba miejsc po przecinku.
DECLARE @decimal_variable DECIMAL(8, 4) = 1234.5678;
● Jest to dokładny typ liczbowy, co oznacza, że liczby są przechowywane
DECLARE @numeric_variable NUMERIC(10, 2) = 98765.43;
z pełną precyzją.
● p musi być co najmniej równa s + 1, co zapewnia wystarczającą precyzję
dla wartości dziesiętnej. Oba te typy danych są używane, gdy konieczne jest zachowanie precyzji dla wartości

zmiennoprzecinkowych, a ich wybór zależy od preferencji programisty. W praktyce są


Przykład:
stosowane w sytuacjach, gdzie konieczne jest uniknięcie problemów z zaokrąglaniem i
DECLARE @decimal_variable DECIMAL(5, 2) = 123.45;
utrzymanie dokładności w obliczeniach finansowych, statystycznych i innych dziedzinach,
W tym przykładzie, 123.45 ma pięć cyfr (łącznie z miejscem dziesiętnym) i dwie gdzie precyzja jest kluczowa.
cyfry po przecinku.
Typy danych SZBD Microsoft SQL Server #3
Character and String Types (Typy znakowe i tekstowe): 2. varchar(n):
● varchar(n) to typ danych znakowych o zmiennej długości.
Typy danych znakowych i tekstowych w bazie danych Microsoft SQL Server ● Może przechowywać od 0 do n znaków.
służą do przechowywania informacji tekstowych. ● Zajmuje tyle miejsca, ile jest faktycznie używane do przechowywania danych, plus
dodatkowe bajty na informacje o długości.
● Długość n musi być określona podczas definiowania kolumny.
Typy danych znakowych i tekstowych w bazie danych Microsoft SQL Server ● Jest bardziej efektywny niż char w przypadku przechowywania zmiennych długości tekstu.
służą do przechowywania informacji tekstowych. Oto krótki opis tych typów
danych: Przykład:
DECLARE @variable_char VARCHAR(10) = 'Hello'; -- 'Hello' zajmuje tylko
● 1. char(n): 5 znaków

char(n) to typ danych znakowych o stałej długości.
○ Zawsze zajmuje dokładnie n znaków, bez względu na to, ile 3. text:
● text to typ danych przeznaczony do przechowywania dużych ilości tekstu.
znaków faktycznie zostało użytych. ● Jest to typ danych o zmiennej długości, który może pomieścić do 2^31-1 bajtów danych

Długość n musi być określona podczas definiowania (około 2 GB).
kolumny. ● text jest używane do przechowywania tekstu, którego długość nie jest znana z góry.
● Jest starszym typem danych, a zalecane jest używanie bardziej nowoczesnych typów, takich
○ Jest przydatny, gdy wiadomo, że wszystkie przechowywane jak varchar(max) lub nvarchar(max), w zależności od potrzeb.
wartości będą miały stałą długość.
Przykład:
Przykład: DECLARE @large_text TEXT = 'To jest przykładowy tekst o dużej
DECLARE @fixed_char CHAR(10) = 'Hello'; -- 'Hello' długości...';

zostanie uzupełnione spacjami do 10 znaków Podsumowując, char(n) i varchar(n) służą do przechowywania tekstu o ustalonej długości lub zmiennej
długości, podczas gdy text jest używany do przechowywania dużych ilości tekstu, ale jest zalecane
korzystanie z bardziej nowoczesnych alternatyw.
Typy danych SZBD Microsoft SQL Server #4
datetime:
● datetime to typ danych przechowujący datę i czas.
Date and Time Types (Typy daty i czasu): ● Format: 'YYYY-MM-DD HH:MI:SS'.
Typy danych dotyczące daty i czasu w bazie danych Microsoft SQL Server
umożliwiają przechowywanie informacji związanych z datą i czasem.
date: Przykład:
● date to typ danych przechowujący tylko datę (bez informacji o czasie).
● Format: 'YYYY-MM-DD'.
DECLARE @my_datetime DATETIME = '2022-01-24 12:30:45';

Przykład:
DECLARE @my_date DATE = '2022-01-24'; datetime2:

time: ● datetime2 to bardziej precyzyjny typ niż datetime, pozwalający na


przechowywanie daty i czasu z większą dokładnością.
● time to typ danych przechowujący tylko czas (bez informacji o dacie). ● Format: 'YYYY-MM-DD HH:MI:SS[.fractional_seconds]'.

● Format: 'HH:MI:SS'. Przykład:


Przykład:
DECLARE @my_datetime2 DATETIME2 = '2022-01-24
DECLARE @my_time TIME = '12:30:45 12:30:45.1234567';;;
;
KONIEC
Źródła:
oracledev.pl

You might also like