typy趎ych


Warsi艅ski Rafa艂

IIS ASK 5755

Systemy zarz膮dzania bazami danych gr 膰w. I

TYPY DANYCH SQL

Poni偶ej przedstawiam typy danych wyst臋puj膮cych w bazach danych SQL.(Niekt贸re typy takie jak np. Integer, Float mo偶na spotka膰 w innych bazach danych wykorzystywanych przez j臋zyki programowania - C/C++, Pascal, C++ Builder)

BINARY

W polu tego typu mo偶e by膰 przechowywany dowolny rodzaj danych. Nie jest dokonywana 偶adna translacja danych (np. na tekst). Spos贸b prezentacji danych zale偶y od sposobu ich umieszczenia w polu.

Rozmiar: 1 bajt lub znak

BIT

Warto艣ci Tak i Nie oraz pola zawieraj膮ce tylko jedn膮 z dw贸ch warto艣ci.

Rozmiar: 1 bajt

TINYINT

Liczba ca艂kowita z przedzia艂u od 0 do 255.

Rozmiar: 1 bajt

MONEY

Liczba ca艂kowita z przedzia艂u od
- 922聽337聽203聽685聽477,5808 do 922聽337聽203聽685聽477,5807.

Rozmiar: 8 bajt贸w

DATETIME

Warto艣膰 daty lub godziny z przedzia艂u lat od 100 do 9999.

Rozmiar: 8 bajt贸w

UNIQUEIDENTIFIER

Unikatowy numer identyfikacyjny wykorzystywany przy zdalnym wywo艂ywaniu procedur.

Rozmiar: 128 bit贸w

REAL

Warto艣膰 zmiennoprzecinkowa o pojedynczej precyzji mieszcz膮ca si臋 w przedziale od - 3,402823E38 do - 1,401298E-45 dla warto艣ci ujemnych, od 1,401298E-45 do 3,402823E38 dla warto艣ci dodatnich, oraz 0.

Rozmiar: 4 bajty

FLOAT

Warto艣膰 zmiennoprzecinkowa o podw贸jnej precyzji nale偶膮ca do zakresu od - 1,79769313486232E308 do - 4,94065645841247E-324 dla warto艣ci ujemnych, od 4,94065645841247E-324 do 1,79769313486232E308 dla warto艣ci dodatnich, oraz 0.

Rozmiar: 8 bajt贸w

SMALLINT

Liczba ca艂kowita kr贸tka (short integer) z przedzia艂u od - 32聽768 do 32聽767 (zobacz Uwagi).

Rozmiar: 2 bajty

INTEGER

Liczba ca艂kowita d艂uga (long integer) z zakresu od - 2聽147聽483聽648 do 2聽147聽483聽647 (zobacz Uwagi).

Rozmiar: 4 bajty

DECIMAL

Dok艂adny numeryczny typ danych, kt贸ry obs艂uguje warto艣ci od 1028 - 1 do - 1028 - 1. Mo偶na okre艣li膰 zar贸wno dok艂adno艣膰 (1 - 28), jak i skal臋 (0 - ustalona precyzja). Domy艣lna precyzja i skala wynosz膮 odpowiednio 18 i 0.

Rozmiar: 17 bajt贸w

TEXT

Od zera do maksymalnie 2,14 gigabajta

Rozmiar: 2 bajty na znak

IMAGE

Od zera do maksymalnie 2,14 gigabajta. Stosowany do obiekt贸w OLE.

Rozmiar: Zale偶nie od wymaga艅

CHARACTER

Od zera do 255 znak贸w.

Rozmiar: 2 bajty na znak

Dodatkowo:

CHAR

Ci膮g znak贸w o zmiennej d艂ugo艣ci nie wi臋kszej ni偶 podany rozmiar. Dla tego typu maksymalny rozmiar mo偶e wynosi膰 255. W przypadku nie podania rozmiaru domy艣lnie przyjmowana jest warto艣膰 1

VARCHAR(SIZE)

W aktualnej wersji ORACLE'a jest to synonim do char, konieczne jest jednak podanie rozmiaru. W przysz艂ych wersjach zak艂ada si臋, 偶e char b臋dzie ci膮giem znak贸w o sta艂ej d艂ugo艣ci, natomiast varchar o zmiennej.

DATE

Poprawne daty z zakresu 1 stycznia 4712 p.n.e. do 31 grudnia 4712 n.e. Domy艣lny format wprowadzania to" DD-MON-YY np.: '01-JAN-89'

LONG

Ci膮g znak贸w o zmiennej d艂ugo艣ci nie wi臋kszej ni偶 65535 znak贸w. Mo偶na zdefiniowa膰 tylko jedn膮 kolumn臋 typu long w jednej tabeli.

RAW(SIZE)

Ci膮g bajt贸w o podanej d艂ugo艣ci. Specyfikacja rozmiaru jest konieczna. Rozmiar maksymalny dla tego typu to 255. Warto艣ci do p贸l tego typu s膮 wstawiane jako ci膮gi znak贸w w notacji szesnastkowej.

LONGRAW

Ci膮g bajt贸w o zmiennej d艂ugo艣ci. Pozosta艂e w艂asno艣ci jak dla typu long. Warto艣ci do p贸l tego typu s膮 wstawiane jako ci膮gi znak贸w w notacji szesnastkowej.

ROWID

Unikalna warto艣膰 identyfikuj膮ca wiersz. Podany typ jest pseudotypem, tzn. kolumna tego typu nie mo偶e by膰 utworzona w tabeli i nie jest w niej przechowywana, ale obliczana na podstawie informacji o fizycznym po艂o偶eniu wiersza na dysku, w pliku itp. Warto艣膰 typu ROWID mo偶e by膰 przekonwertowana do typu znakowego za pomoc膮 funkcji ROWIDTOCHAR.

NUMBER

Typ numeryczny. Jego warto艣ci mog膮 si臋 zmienia膰 w zakresie

od 1.0 * 10-129 do 9.99 * 10124. Mo偶liwe jest ograniczenie podanego zakresu przez specyfikacj臋 precyzji i skali w spos贸b opisany poni偶ej.

Zar贸wno warto艣膰 pocz膮tkow膮, jak i przyrost mo偶na modyfikowa膰 za pomoc膮 instrukcji ALTER TABLE. Nowe wiersze wstawione do tabeli b臋d膮 mia艂y warto艣ci automatycznie wygenerowane dla danej kolumny, oparte na tej warto艣ci pocz膮tkowej i warto艣ci przyrostu. Je艣li nowa warto艣膰 pocz膮tkowa i warto艣膰 przyrostu mog膮 powodowa膰 powstawanie warto艣ci zgodnych z warto艣ciami wygenerowanymi na podstawie poprzedniej warto艣ci pocz膮tkowej i warto艣ci przyrostu, powstan膮 dane zduplikowane. Je艣li kolumna jest kluczem podstawowym, wstawienie nowych wierszy mo偶e spowodowa膰 b艂臋dy w sytuacji, gdy zostan膮 wygenerowane powtarzaj膮ce si臋 warto艣ci.

Znaki znajduj膮ce si臋 w polach typu danych TEXT (znanych r贸wnie偶 jako dane MEMO) lub CHAR (znanych r贸wnie偶 jako dane TEXT(n) o okre艣lonej d艂ugo艣ci) s膮 przechowywane w formacie prezentacji Unicode. Format Unicode wymaga zawsze dw贸ch bajt贸w dla ka偶dego znaku. W istniej膮cych bazach danych programu Microsoft Jet, kt贸re zawieraj膮 g艂贸wnie dane znakowe, mo偶e to powodowa膰 niemal dwukrotne zwi臋kszenie rozmiaru pliku bazy danych po przekonwertowaniu do formatu programu Microsoft Jet w wersji 4.0. Jednak dane wielu zestaw贸w znak贸w prezentowanych w formacie Unicode, kt贸re wcze艣niej by艂y zdefiniowane jako zestawy znak贸w jednobajtowych (SBCS), mo偶na z 艂atwo艣ci膮 kompresowa膰 do znak贸w jednobajtowych. Je艣li dla kolumny danych CHAR zostanie okre艣lony atrybut COMPRESSION, dane b臋d膮 automatycznie kompresowane podczas zapisywania, a dekompresowane podczas pobierania z kolumny.



Wyszukiwarka