Tipuri de date SQL Server cu exemple
Ce este tipul de date?
A Tipul de date în SQL server este definit ca tipul de date pe care orice coloană sau variabilă le poate stoca. Este un tip de date pe care un obiect le deține, cum ar fi întreg, caracter, șir etc. În timp ce creați orice tabel sau variabilă, pe lângă specificarea numelui, setați și tipul de date pe care îl va stoca.
Cum se utilizează tipul de date MS SQL
- Trebuie să definiți în prealabil tipul de date pe care o coloană sau o variabilă poate stoca. De asemenea, determinarea tipului de date împiedică utilizatorul să introducă date neașteptate sau nevalide.
- Puteți utiliza eficient memoria atribuind un tip de date adecvat variabilei sau coloanei, care va aloca doar cantitatea necesară de memorie de sistem pentru datele coloanei respective.
- MS SQL oferă o categorie largă de tipuri de date de bază în SQL, în funcție de nevoile utilizatorului, cum ar fi data, imagini binare etc.
De ce să folosiți DataTypes?
Să luăm o mostră de simplu Pagina de înscriere a aplicației site-ului web. Trei câmpuri de introducere sunt Prenume, Nume și Număr de contact.
Aici ar trebui să reținem că în timp real:
- „Prenumele/Numele” va fi intotdeauna alfabetic.
- "A lua legatura" va fi intotdeauna numeric.

- Din poza de mai sus merită definită „Prenumele/Numele” ca o caracter si "A lua legatura" ca o întreg.
Este evident că în orice aplicație, toate câmpurile au unul sau altul tip de date. De exemplu, numerice, alfabetice, date și multe altele.
De asemenea, rețineți că tipul de date diferit are cerințe de memorie diferite. Prin urmare, este mai logic să definiți coloana sau variabil cu tipul de date pe care îl va păstra pentru utilizarea eficientă a memoriei.
Tip de date disponibil în MS SQL Server
Iată lista de tipuri de date de server MS SQL:
Server MS SQL acceptă următoarele categorii de tip de date:
- Numeric exact
- Numerică aproximativă
- Data si ora
- Șiruri de caractere
- Șiruri de caractere Unicode
- Șiruri binare
- Alte tipuri de date

Tipuri exacte de date numerice în SQL
Exact numeric are nouă tipuri de subtipuri de date în serverul SQL.
Tipuri de date numerice exacte
Tipul de date | Descriere | Limita inferioara | Limita superioară | Memorie |
---|---|---|---|---|
bigint | Stochează numere întregi în intervalul dat | −2^63 (−9,223,372, 036,854,775,808) | 2^63−1 (−9,223,372, 036,854,775,807) | Bytes 8 |
int | Stochează numere întregi în intervalul dat | −2^31 (−2,147, 483,648) | 2^31−1 (−2,147, 483,647) | Bytes 4 |
smallint | Stochează numere întregi în intervalul dat | −2^15 (−32,767) | 2^15 (−32,768) | Bytes 2 |
tinyint | Stochează numere întregi în intervalul dat | 0 | 255 | 1 octet |
pic | Poate lua valori 0, 1 sau NULL. | 0 | 1 | Coloană de 1 octet/8 biți |
zecimal | Folosit pentru scară și numere fixe de precizie | −10^38+1 | 10^381−1 | 5 până la 17 octeți |
numeric | Folosit pentru scară și numere fixe de precizie | −10^38+1 | 10^381−1 | 5 până la 17 octeți |
bani | Date monetare folosite | −922,337, 203, 685,477.5808 | +922,337, 203, 685,477.5807 | Bytes 8 |
bani mici | Date monetare folosite | -214,478.3648 | +214,478.3647 | Bytes 4 |
Tipuri de date numerice exacte în SQL Server cu exemple:
Solicitare:
DECLARE @Datatype_Int INT = 2 PRINT @Datatype_Int
producție
2
Sintaxă
Decimală (P,S)
Aici,
- P este precizia
- S este scara
Solicitare:
DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31 PRINT @Datatype_Decimal
producție
2.31
Tipuri de date numerice aproximative în SQL
SQL Categoria numerică aproximativă include virgulă mobilă și valori reale. Aceste tipuri de date în SQL sunt utilizate în principal în calcule științifice.
Tip de date numerice aproximative
Tipul de date | Descriere | Limita inferioara | Limita superioară | Memorie | Precizie |
---|---|---|---|---|---|
plutitor(n) | Folosit pentru un număr de precizie flotant | −1.79E+308 | 1.79E + 308 | Depinde de valoarea lui n | 7 Digit |
real | Folosit pentru un număr de precizie flotant | −3.40E+38 | 3.40E + 38 | Bytes 4 | 15 Digit |
Syntax: FLOAT [(n)]
Aici, n este numărul de biți care sunt utilizați pentru a stoca mantisa pluti număr în notație științifică. În mod implicit, valoarea lui n este 53.
Când utilizatorul definește un tip de date precum float, n ar trebui să fie o valoare între 1 și 53.
SQL Server tratează n ca una dintre cele două valori posibile. Dacă 1<=n<=24, n este tratat ca 24. Dacă 25<=n<=53, n este tratat ca 53.
Exemplu de interogare:
DECLARE @Datatype_Float FLOAT(24) = 22.1234 PRINT @Datatype_Float
producție
22.1234
Data și ora Tipuri de date în SQL
Stochează date de tipul Data și ora.
Data și ora Tip de date
Tipul de date | Descriere | Dimensiunea stocării | Acuratete | Gama Inferioară | Gama superioară |
---|---|---|---|---|---|
DateTime | Folosit pentru a specifica o dată și o oră de la 1 ianuarie 1753 până la 31 decembrie 9999. Are o precizie de 3.33 milisecunde. | Bytes 8 | Rotunjit la incremente de .000, .003, .007 | 1753-01-01 | 9999-12-31 |
smalldatetime | Folosit pentru a specifica o dată și o oră de la 1 ianuarie 0001 până la 31 decembrie 9999. Are o precizie de 100 nanosecunde | 4 octeți, fix | 1 minute | 1900-01-01 | 2079-06-06 |
data | Folosit pentru a stoca numai data de la 1 ianuarie 0001 până la 31 decembrie 9999 | 3 octeți, fix | 1 zi | 0001-01-01 | 9999-12-31 |
timp | Folosit pentru stocarea numai a valorilor de timp cu o precizie de 100 de nanosecunde. | Bytes 5 | 100 nanosecunde | 00:00:00.0000000 | 23:59:59.9999999 |
datetimeoffset | Similar cu datatime, dar are o compensare a fusului orar | Bytes 10 | 100 nanosecunde | 0001-01-01 | 9999-12-31 |
datatime2 | Folosit pentru a specifica o dată și o oră de la 1 ianuarie 0001 până la 31 decembrie 9999 | Bytes 6 | 100 nanosecunde | 0001-01-01 | 9999-12-31 |
Exemplu de interogare:
DECLARE @Datatype_Date DATE = '2030-01-01' PRINT @Datatype_Date
producție
„2030-01-01”
Tipuri de date șiruri de caractere în SQL
Această categorie este legată de un tip de caracter. Acesta permite utilizatorului să definească tipul de date al caracterului care poate fi de lungime fixă și variabilă. Are patru tipuri de tipuri de date. Mai jos sunt tipurile de date ale serverului SQL șirurile de caractere cu exemple.
Tipuri de date șiruri de caractere
Tipul de date | Descriere | Limita inferioara | Limita superioară | Memorie |
---|---|---|---|---|
car de război | Este un șir de caractere cu o lățime fixă. Stochează maximum 8,000 de caractere. | 0 tancuri | 8000 tancuri | n octeți |
varchar | Acesta este un șir de caractere cu lățime variabilă | 0 tancuri | 8000 tancuri | n octeți + 2 octeți |
varchar (max) | Acesta este un șir de caractere cu o lățime variabilă. Stochează maximum 1,073,741,824 de caractere. | 0 tancuri | 2^31 caractere | n octeți + 2 octeți |
a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. | Acesta este un șir de caractere cu o lățime variabilă. Stochează maximum 2 GB de date text. | 0 tancuri | 2,147,483,647 tancuri | n octeți + 4 octeți |
Exemplu de interogare:
DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype' PRINT @Datatype_Char
producție
Acesta este tipul de date caracter
Tipuri de date Unicode șiruri de caractere în SQL
Această categorie stochează întreaga gamă de caractere Unicode care utilizează codificarea caracterelor UTF-16.
Tipuri de date șiruri de caractere Unicode
Tipul de date | Descriere | Limita inferioara | Limita superioară | Memorie |
---|---|---|---|---|
nchar | Este un șir Unicode de lățime fixă | 0 tancuri | 4000 tancuri | de 2 ori n octeți |
nvarchar | Este un șir unicode de lățime variabilă | 0 tancuri | 4000 tancuri | De 2 ori n octeți + 2 octeți |
ntext | Este un șir unicode de lățime variabilă | 0 tancuri | 1,073,741,823 caractere | de 2 ori lungimea șirului |
Exemplu de interogare:
DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype' PRINT @Datatype_nChar
producție
Acesta este tipul de date nCharacter
Tipuri de date șiruri binare în SQL
Această categorie conține un șir binar de lungime fixă și variabilă.
Tipuri de date șiruri binare
Tipul de date | Descriere | Limita inferioara | Limita superioară | Memorie |
---|---|---|---|---|
binar | Este un șir binar cu lățime fixă. Stochează maximum 8,000 de octeți. | Bytes 0 | Bytes 8000 | n octeți |
varbinar | Acesta este un șir binar de lățime variabilă. Stochează maximum 8,000 de octeți | Bytes 0 | Bytes 8000 | Lungimea reală a datelor introduse + 2 octeți |
imagine | Acesta este un șir binar de lățime variabilă. Stochează maxim 2 GB. | Bytes 0 | Bytes 2,147,483,647 |
Exemplu de interogare:
DECLARE @Datatype_Binary BINARY(2) = 12; PRINT @Datatype_Binary
producție
0x000C
Alte tipuri de date în SQL
Acestea sunt alte tipuri diferite de date SQL server cu descrierea de mai jos -
Tipul de date | Descriere |
---|---|
cursor | Ieșirea sa este o coloană de sp_cursor_list si sp_describe_cursor. Returnează numele variabilei cursorului. |
Versiune pe rând | Această versiune ștampilă rânduri de tabel. |
Ierarhiid | Acest tip de date reprezintă o poziție în ierarhie |
Identificator unic | Conversie dintr-o expresie de caracter. |
Varianta_SQL | Stochează valorile tipurilor de date acceptate de server SQL. |
XML | Stochează date XML într-o coloană. |
Tipul geometriei spațiale | Reprezintă datele într-un sistem de coordonate plat. |
Tipul Geografiei Spațiale | Reprezintă date în sistemul de coordonate rotund-pământ. |
tabel | Stochează un set de rezultate pentru procesare ulterioară. |
Fapte interesante!
- tip de date CHAR este mai rapid decât tipul de date SQL VARCHAR în timpul recuperării datelor.
Rezumat
- Fiecare coloană din tabele se definește cu tipul său de date în timpul creării tabelului.
- Există șase categorii principale și o altă categorie diverse. Alte diverse au nouă subcategorii de SQL Server tipuri de date și dimensiuni disponibile.