SQL Server-datatyper med eksempler

Hva er datatype?

A Data-type i SQL server er definert som typen data som enhver kolonne eller variabel kan lagre. Det er en type data som et objekt har som heltall, tegn, streng osv. Mens du lager en hvilken som helst tabell eller variabel, i tillegg til รฅ spesifisere navnet, angir du ogsรฅ typen data den skal lagre.

Hvordan bruke MS SQL datatype

  • Du mรฅ definere pรฅ forhรฅnd hvilken type data en kolonne eller variabel kan lagre. Fastsettelse av datatype begrenser ogsรฅ brukeren fra รฅ legge inn uventede eller ugyldige data.
  • Du kan gjรธre effektiv bruk av minnet ved รฅ tilordne en passende datatype til variabel eller kolonne som kun vil tildele den nรธdvendige mengden systemminne for den respektive kolonnens data.
  • MS SQL tilbyr en bred kategori av grunnleggende datatyper i SQL i henhold til brukerens behov som Dato, binรฆre bilder, etc.

Hvorfor bruke DataTypes?

La oss ta en prรธve av enkle Registrer deg side av nettsideapplikasjonen. Tre inndatafelter er Fornavn, Etternavn og Kontaktnummer.

Her bรธr vi merke oss at i sanntid:

  • "For-/etternavn" vil alltid vรฆre alfabetisk.
  • "Ta kontakt med" vil alltid vรฆre numerisk.
SQL Server-datatyper
Eksempel pรฅ datatyper i MS SQL
  • Fra bildet ovenfor er det verdt รฅ definere "For-/etternavn" som en karakter og "Ta kontakt med" som en heltall.

Det er tydelig at alle felter har den ene eller den andre typen data i enhver applikasjon. For eksempel numerisk, alfabetisk, dato og mange flere.

Vรฆr ogsรฅ oppmerksom pรฅ at forskjellige datatyper har forskjellige minnekrav. Derfor er det mer fornuftig รฅ definere kolonnen eller variabel med datatypen den vil holde for effektiv bruk av minnet.

Datatype tilgjengelig i MS SQL Server

Her er en liste over MS SQL-serverdatatyper:

MS SQL server stรธtte fรธlgende kategorier av datatype:

  • Nรธyaktig numerisk
  • Omtrentlig numerisk
  • Dato og tid
  • Karakterstrenger
  • Unicode-tegnstrenger
  • Binรฆre strenger
  • Andre datatyper
Datatype tilgjengelig i MS SQL Server

MS SQL-datatyper

Nรธyaktige numeriske datatyper i SQL

Nรธyaktig numerisk har ni typer underdatatyper i SQL-serveren.

Nรธyaktige numeriske datatyper

Data-type Tekniske beskrivelser Nedre grense ร˜vre grense Minne
bigint Den lagrer hele tall i omrรฅdet gitt โˆ’2^63 (โˆ’9,223,372, 036,854,775,808) 2^63โˆ’1 (โˆ’9,223,372, 036,854,775,807) 8 bytes
int Den lagrer hele tall i omrรฅdet gitt โˆ’2^31 (โˆ’2,147, 483,648) 2^31โˆ’1 (โˆ’2,147, 483,647) 4 bytes
smallint Den lagrer hele tall i omrรฅdet gitt โˆ’2^15 (โˆ’32,767 XNUMX) 2^15 (-32,768 XNUMX) 2 bytes
bitteliten Den lagrer hele tall i omrรฅdet gitt 0 255 1 bytes
bit Det kan ha 0, 1 eller NULL verdier. 0 1 1 byte/8bit kolonne
desimal Brukes til skala og faste presisjonstall โˆ’10^38+1 10^381-1 5 til 17 byte
numerisk Brukes til skala og faste presisjonstall โˆ’10^38+1 10^381-1 5 til 17 byte
penger Brukte pengedata โˆ’922,337, 203, 685,477.5808 +922,337, 203, 685,477.5807 8 bytes
smรฅpenger Brukte pengedata -214,478.3648 + 214,478.3647 (vi er ikke fra Mexico) 4 bytes

Nรธyaktige numeriske datatyper inn SQL-server med eksempler:

Spรธrsmรฅl:

DECLARE @Datatype_Int INT = 2
PRINT @Datatype_Int

Produksjon

2

syntax

Desimal (P,S)

Her

  • P er presisjon
  • S er mรฅlestokk

Spรธrsmรฅl:

DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31
PRINT @Datatype_Decimal

Produksjon

2.31

Omtrentlig numeriske datatyper i SQL

SQL Omtrentlig numerisk kategori inkluderer flyttall og reelle verdier. Disse datatypene i SQL brukes mest i vitenskapelige beregninger.

Omtrentlig numerisk datatype

Data-type Tekniske beskrivelser Nedre grense ร˜vre grense Minne Precision
flyte(n) Brukes for et flytende presisjonstall โˆ’1.79E+308 1.79E + 308 Avhenger av verdien av n 7 Digit
ekte Brukes for et flytende presisjonstall โˆ’3.40E+38 3.40E + 38 4 bytes 15 Digit
Syntax:  FLOAT [(n)]

Her n er antall biter som brukes til รฅ lagre mantissen til flyte tall i vitenskapelig notasjon. Som standard er verdien av n 53.

Nรฅr brukeren definerer en datatype som float, n bรธr vรฆre en verdi mellom 1 og 53.

SQL Server behandler n som en av to mulige verdier. Hvis 1<=n<=24, behandles n som 24. Hvis 25<=n<=53, behandles n som 53.

Eksempel pรฅ spรธrring:

DECLARE @Datatype_Float FLOAT(24) = 22.1234
PRINT @Datatype_Float

Produksjon

22.1234

Dato og klokkeslett Datatyper i SQL

Den lagrer data av typen Dato og klokkeslett.

Dato og klokkeslett Datatype

Data-type Tekniske beskrivelser Lagringsstรธrrelse Nรธyaktighet Nedre rekkevidde ร˜vre rekkevidde
Dato tid Brukes for รฅ spesifisere en dato og tid fra 1. januar 1753 til 31. desember 9999. Den har en nรธyaktighet pรฅ 3.33 millisekunder. 8 bytes Avrundet til trinn pรฅ .000, .003, .007 1753-01-01 9999-12-31
smalldatetime Brukes for รฅ spesifisere en dato og tid fra 1. januar 0001 til 31. desember 9999. Den har en nรธyaktighet pรฅ 100 nanosekunder 4 byte, fast 1 minutt 1900-01-01 2079-06-06
data Brukes kun til รฅ lagre dato fra 1. januar 0001 til 31. desember 9999 3 byte, fast 1 dag 0001-01-01 9999-12-31
tid Brukes for รฅ lagre kun tidsverdier med en nรธyaktighet pรฅ 100 nanosekunder. 5 bytes 100 nanosekunder 00:00:00.0000000 23:59:59.9999999
datotidsforskyvning Ligner pรฅ datatid, men har en tidssoneforskyvning 10 bytes 100 nanosekunder 0001-01-01 9999-12-31
dato klokkeslett 2 Brukes for รฅ spesifisere en dato og tid fra 1. januar 0001 til 31. desember 9999 6 bytes 100 nanosekunder 0001-01-01 9999-12-31

Eksempel pรฅ spรธrring:

DECLARE @Datatype_Date DATE = '2030-01-01'
PRINT @Datatype_Date

Produksjon

'2030-01-01'

Tegnstrenger Datatyper i SQL

Denne kategorien er relatert til en tegntype. Den lar brukeren definere datatypen for tegn som kan vรฆre av fast og variabel lengde. Den har fire typer datatyper. Nedenfor er tegnstrengen SQL-serverdatatyper med eksempler.

Datatyper for tegnstrenger

Data-type Tekniske beskrivelser Nedre grense ร˜vre grense Minne
chariot Det er en tegnstreng med en fast bredde. Den lagrer maksimalt 8,000 tegn. 0 tegn 8000 tegn n byte
varchar Dette er en tegnstreng med variabel bredde 0 tegn 8000 tegn n byte + 2 byte
varchar (maks) Dette er en tegnstreng med variabel bredde. Den lagrer maksimalt 1,073,741,824 XNUMX XNUMX XNUMX tegn. 0 tegn 2^31 tegn n byte + 2 byte
tekst Dette er en tegnstreng med variabel bredde. Den lagrer maksimalt 2 GB tekstdata. 0 tegn 2,147,483,647 tegn n byte + 4 byte

Eksempel pรฅ spรธrring:

DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype'
PRINT @Datatype_Char

Produksjon

Dette er Character Datatype

Unicode-tegnstrenger datatyper i SQL

Denne kategorien lagrer hele spekteret av Unicode-tegn som bruker UTF-16-tegnkoding.

Unicode-tegnstrengdatatyper

Data-type Tekniske beskrivelser Nedre grense ร˜vre grense Minne
nchar Det er en Unicode-streng med fast bredde 0 tegn 4000 tegn 2 ganger n byte
nvarchar Det er en unicode-streng med variabel bredde 0 tegn 4000 tegn 2 ganger n byte + 2 byte
ntekst Det er en unicode-streng med variabel bredde 0 tegn 1,073,741,823 rรธyker 2 ganger strenglengden

Eksempel pรฅ spรธrring:

DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype'
PRINT @Datatype_nChar

Produksjon

Dette er nCharacter Datatype

Binรฆre strengdatatyper i SQL

Denne kategorien inneholder en binรฆr streng med fast og variabel lengde.

Binรฆre strengdatatyper

Data-type Tekniske beskrivelser Nedre grense ร˜vre grense Minne
binรฆre Det er en binรฆr streng med fast bredde. Den lagrer maksimalt 8,000 byte. 0 bytes 8000 bytes n byte
varbinรฆr Dette er en binรฆr streng med variabel bredde. Den lagrer maksimalt 8,000 byte 0 bytes 8000 bytes Den faktiske lengden pรฅ innlagte data + 2 byte
bilde Dette er en binรฆr streng med variabel bredde. Den lagrer maksimalt 2 GB. 0 bytes 2,147,483,647 bytes

Eksempel pรฅ spรธrring:

DECLARE @Datatype_Binary BINARY(2) = 12;
PRINT @Datatype_Binary

Produksjon

0x000C

Andre datatyper i SQL

Dette er andre forskjellige SQL-serverdatatyper med beskrivelsen nedenfor-

Data-type Tekniske beskrivelser
Markรธr Utgangen er en kolonne av sp_cursor_list og sp_describe_cursor.
Den returnerer navnet pรฅ markรธrvariabelen.
Radversjon Dens versjon stempler tabellrader.
Hierarkiid Denne datatypen representerer en posisjon i hierarkiet
Unikidentifikator Konvertering fra et tegnuttrykk.
SQL_variant Den lagrer verdier for SQL-serverstรธttede datatyper.
XML Den lagrer XML-data i en kolonne.
Romlig geometri type Den representerer data i et flatt koordinatsystem.
Type romgeografi Det representerer data i koordinatsystemet rundt jorden.
bord Den lagrer et resultatsett for senere behandling.

Interessante fakta!

  • CHAR datatype er raskere enn SQL VARCHAR-datatypen mens du henter data.

Sammendrag

  • Hver kolonne i tabeller definerer med sin datatype under tabelloppretting.
  • Det er seks hovedkategorier og en annen diverse kategori. Annet diverse har ni underkategorier av SQL-server tilgjengelige datatyper og stรธrrelser.

Oppsummer dette innlegget med: