CentrumXP.pl » Witamy
CentrumXP.pl
 
Szukaj
Subskrypcja
Powiadomienie e-mailem o nowościach na CentrumXP.pl:
E-mail: Zapisz
Czy zamierzasz pobrać Internet Explorer 9?


CentrumXP.pl » Microsoft .NET » Kurs SQL » Dodaj do ulubionych Dodaj do ulubionych   Dodaj do ulubionych Wersja do wydruku

08. Co to jest typ danych? Jakie typy danych dostarcza nam SQL Server 2005.

Autor: Grzegorz Chuchra    Opublikowano: 18 stycznia 2006    Odsłon: 52578    »Skomentuj...
Strona 1 z 2  Następna»
Zobacz również:

01. SQL Server 2005 Express - Wstęp do kursu

02. Instalacja. Opis elementów wchodzących w skład SQL Server 2005.

03. SQL Server - instalacja krok po kroku

04. Pierwszy kontakt. Czyli czym jest baza danych i jak z niej korzystać.

05. Wstęp do relacyjnych baz danych. Sposób organizacji danych danych.

06. Klucze główne i obce

07. Normalizacja baz danych

09. Z teorii do praktyki czyli "Data Definition Language"

10. Operacje na danych "Data Manipulation Language".

11. Filtracja danych

12. Funkcje agregujące

13. Łączenie tabel

14. Praca z podzapytańami, tabelami tymczasowymi i zmiennymi tabelarycznymi

15. Nowości w "Data Control Language", czyli parę słów o schematach

16. Transakcje

17. Nowości w SQL Server 2005

18. Procedury składowalne i funkcje bazodanowe

19. XML i XQuery

20. Użycie .NET CLR w SQL Server 2005

»Uzyskaj pomoc na forum

W kursie tym chciałbym przybliżyć wszystkim pojęcie typu danych oraz wymienić typy danych, jakie występują w nowym Microsoft SQL Server 2005. Szczególną uwagę zwrócimy na nowości jakie zostały wprowadzone w najnowszej wersji serwera.

Typy danych charakteryzują daną komórkę w wierszu. Mówią, jakiego rodzaju informacje możemy umieścić w danej kolumnie. Przykładowo innego typu danych użyjemy, gdy będziemy chcieli przechowywać imię użytkownika, innego dla daty jego urodzin, a jeszcze innego, gdy będziemy chcieli przechowywać jego zdjęcie.

Poszczególne typy danych można zakwalifikować do różnych grup. Ponieważ dokładny opis i wynikający z tego podział znacznie wykracza poza ramy tego artykułu, zastosujemy tu dość ogólną segmentację ze względu na funkcjonalność. Poniżej przedstawiony jest podział na grupy funkcjonalności:

Dane tekstowe

char, varchar, nchar, ntext, nvarchar

Liczbowe

int, smallint, bigint, tinyint, float, real, decimal, numeric

Data i czas

datetime, smalldatetime

Binarne

binary, varbinary

Waluta

money, smallmoney

Specjalne

text, image, xml, bit

Typy tekstowe

Typy tekstowe składają się z dwóch podtypów. Pierwszy to typ łańcuchowy: char, varchar, drugi zaś, unicode: ntest, nvarchar. Łańcuchy znaków mogą zawierać litery, liczby i symbole. W zależności od zadeklarowanej długości(np.: char(16)) mamy możliwość przechowywania określonej ilośći znaków. Jeśli pole zadeklarowane na 16 znaków nie zostanie całkowicie wypełnione (wpisany tekst ma mniej niż 16 znaków) reszta znaków zostanie uzupełniona spacjami. Jeśli zaś ma więcej niż zadeklarowana liczba, wyraz zostanie obcięty na granicy szesnastego znaku. Zaleca się stosowanie typów o zmiennej ilość (varchar(n)), w przeciwieństwie do poprzednich nie są one dopełniane spacjami, co w dość jasny sposób przyczynia się do efektywniejszego zarządzania zasobami pamięci serwera. Kolejne typy danych, które służą do zapisywania tekstów mają zupełnie inną strukturę fizyczną aniżeli char. Typ nchar, bo o nim tutaj mowa, jest zapisany w standardzie unicode. Standard ten gwarantuje nam skuteczną pracę z serwerem obsługującym aplikacje wielojęzyczne. Jeśli chcielibyśmy aby nasza aplikacja działała zarówno w języku włoskim, polskim jak i w angielskim, pola zawierające tekst muszą być zadeklarowane jako nchar, w przeciwnym wypadku dojdzie do przekłamań. Kosztem wprowadzenia typu nchar, jest zwiększenie fizycznej objętości. Standard unicode zapisuje pojedynczy znak na dwóch bajtach podczas gdy ANSI używa do tego jednego bajtu. Tak więc powinniśmy dokładnie przemyśleć, czy nasza aplikacja ma działać w środowisku wielojęzycznym lub czy w niedalekiej przyszłości jest prawdopodobne, aby w takim otoczeniu działała.
Dodatkowym, dość ważnym ograniczeniem jest maksymalna ilość znaków, które mogą być składowane w jednym polu. Jego objętość nie jest nieograniczona. Jeśli chcemy przechowywać tekst o dużej długości, lepiej użyć typu ntext, do którego możemy wstawiać nawet tekst o wielkości 2 GB!

Typy liczbowe

Typy całkowite

Typy liczbowe dzielimy na całkowite, przybliżone i dokładne. Jeśli w projekcie mamy możliwość wyboru pomiędzy typem całkowitym, a pozostałymi, powinniśmy zawsze użyć całkowitego. Dzięki temu zwiększymy wydajność i efektywność pracy naszego serwera. Typy całkowite różnią się tylko wielkością zajętej powierzchni i ilością bajtów, na których są składowane, a co za tym idzie zakresem liczb jaki można w nich umieszczać. Poniższa tabele przedstawia typy danych całkowitych i towarzyszące im zakresy.


1 2 Dalej» 

Aktualna ocena to: 3,55

Oceń artykuł...
Porażka Kiepski Taki Sobie Dobry Super!

Tagi:  

A teraz:    Dodaj do ulubionych Dodaj do ulubionych    Wydrukuj Wydrukuj    Wyślij link znajomemu Wyślij link znajomemu    Skomentuj Skomentuj

Komentarze do 08. Co to jest typ danych? Jakie typy danych dostarcza nam SQL Server 2005.

Dodaj komentarz»

thot_pl 14 sierpnia 2006, 20:28

Microsoft nie zaleca uzywania typu "text/ntext/image" poniewaz planuje usuniecie go w przyszlej wersji SQL Server http://msdn2.microsoft.com/en-us/library/ms187993.aspx

acid 15 września 2007, 19:27

Zamień w artykule: mony, smallmony --> money, smallmoney

bonJovi 4 kwietnia 2008, 15:15

@acid ale sie przejął!! :D

Daniel K. 26 czerwca 2008, 11:27

@acid, po dłuższym czasie, ale błąd poprawiony:) Dziękuje za uwagę, pozdrawiam! ;)

ostr 10 września 2008, 22:10

Wiem, że upierdliwy jestem... Na początku arykułu w tabelce jest coś takiego:
Dane tekstowe: char, varchar, nchar, ntest, nvarchar.

Zdziwiło mnie "ntest" :) i trochę musiałem pomyśleć o co chodzi.
Oczywiście powinno być ntext.
Pozdrawiam

Ewa 10 maja 2011, 14:00

to bardzo pomaga ;">  fajnie ,że istnieje taki portal ;)  dziękii ;D


Dodaj swój komentarz

»Zasady udzielania komentarzy

Autor:  
Komentarz:
Dodaj komentarz
© 2012 Onex Group
Onex Group O Onex Group  |  O CentrumXP.pl  |  Kontakt  |  Reklama
Nasze serwisy: CentrumXP.plXboxSpot.pl  |  Jama Mastaha