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.
Tipuri de date SQL Server
Exemplu de tipuri de date în MS SQL
  • 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
Tip de date disponibil în MS SQL Server

Tipuri de date MS SQL

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.