Tipovi podataka SQL poslužitelja: Varchar, numerički, datumsko vrijeme (T-SQL primjeri)

Sadržaj:

Anonim

Što je tip podataka?

Vrsta podataka definira se kao tipu podataka koji svaki stup ili varijable mogu pohraniti u MS SQL Server.

Dok stvarate bilo koju tablicu ili varijablu, uz specificiranje imena, postavljate i vrstu podataka koje će pohraniti.

Kako se koristi MS SQL tip podataka

  • Morate unaprijed definirati vrstu podataka u stupac ili varijablu. Određivanje vrste podataka također ograničava korisnika da unese neočekivane ili nevaljane podatke.
  • Možete učinkovito koristiti memoriju dodjeljivanjem odgovarajuće vrste podataka varijabli ili stupcu koji će dodijeliti samo potrebnu količinu sistemske memorije za podatke odgovarajućeg stupca.
  • MS SQL nudi široku kategoriju tipa podataka prema potrebama korisnika. Kao datum, binarne slike itd.

U ovom vodiču naučit ćete:

  • Što je tip podataka?
    • Kako se koristi MS SQL tip podataka
  • Zašto koristiti DataTypes?
    • Točno numerički
    • Približni numerički
    • Datum i vrijeme
    • Nizovi znakova
    • Nizovi znakova Unicode
    • Binarni niz
    • Ostali tipovi podataka

Zašto koristiti DataTypes?

Uzmimo uzorak jednostavne stranice za prijavu web stranice. Tri polja za unos su Ime, Prezime i Kontakt broj.

Ovdje bismo trebali primijetiti da u stvarnom vremenu:

  • "Ime / prezime" uvijek će biti abecedno .
  • "Kontakt" će uvijek biti numerički .

  • Iz gornje slike vrijedi definirati "Ime / Prezime" kao znak, a " Kontakt" kao cijeli broj .

Očito je da u bilo kojoj aplikaciji sva polja imaju jednu ili drugu vrstu podataka. Npr. Brojčani, abecedni, datum i mnogi drugi.

Također, imajte na umu da različiti tip podataka ima različite potrebe za memorijom. Stoga je logičnije definirati stupac ili varijablu s tipom podataka koji će se nalaziti za učinkovito korištenje memorije.

Vrsta podataka dostupna u MS SQL-u

Podrška MS SQL poslužitelja sljedeće kategorije tipa podataka:

  • Točan numerički
  • Približni brojčani
  • Datum i vrijeme
  • Nizovi znakova
  • Nizovi znakova Unicode
  • Binarni nizovi
  • Ostale vrste podataka
MSQL tipovi podataka

Točno numerički

Točan numerički broj sadrži devet vrsta tipova pod-podataka. Točni numerički tipovi podataka

Vrsta podataka Opis Donja granica Gornja granica Memorija
bigint Pohranjuje cijele brojeve u zadanom rasponu −2 63 (−9.223.372, 036.854.775.808) 2 63−1 (−9.223.372, 036.854.775.807) 8 bajtova
int Pohranjuje cijele brojeve u zadanom rasponu −2 31 (−2.147, 483.648) 2 31−1 (−2.147, 483.647) 4 bajta
smallint Pohranjuje cijele brojeve u zadanom rasponu −2 15 (−32.767) 2 15 (−32.768) 2 bajta
sićušna Pohranjuje cijele brojeve u zadanom rasponu 0 255 1 bajt
malo Može imati 0, 1 ili NULL vrijednosti. 0 1 1 bajt / 8-bitni stupac
decimal Koristi se za brojeve skala i fiksne preciznosti −10 38 + 1 10 381-1 5 do 17 bajtova
brojčani Koristi se za brojeve skala i fiksne preciznosti −10 38 + 1 10 381-1 5 do 17 bajtova
novac Korišteni novčani podaci −922.337, 203, 685.477.5808 +922.337, 203, 685.477.5807 8 bajtova
sitni novac Korišteni novčani podaci −214.478,3648 +214.478,3647 4 bajta

Primjeri:

Upit:

DECLARE @Datatype_Int INT = 2PRINT @Datatype_Int

Izlaz: 2

Sintaksa: decimalni (P, S)

Ovdje,

  • P je preciznost
  • S je ljestvica

Upit:

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

Izlaz: 2,31

Približni numerički

Približna numerička kategorija uključuje pokretne zarez i stvarne vrijednosti. Uglavnom se koriste u znanstvenim proračunima. Približni numerički tip podataka

Vrsta podataka Opis Donja granica Gornja granica Memorija Preciznost
plutati (n) Koristi se za plutajući precizni broj -1,79E + 308 1,79E + 308 Ovisi o vrijednosti n 7 znamenki
stvaran Koristi se za plutajući precizni broj −3.40E + 38 3,40E + 38 4 bajta 15 znamenki
Syntax: FLOAT [(n)] 

Ovdje je n broj bitova koji se koriste za pohranu mantise broja plovka u znanstvene zapise. Prema zadanim postavkama vrijednost n je 53.

Kada korisnik definira vrstu podataka poput float, n bi trebala biti vrijednost između 1 i 53.

SQL Server n tretira kao jednu od dvije moguće vrijednosti. Ako je 1 <= n <= 24, n se tretira kao 24. Ako je 25 <= n <= 53, n se tretira kao 53.

Primjer upita:

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

Izlaz: 22.1234

Datum i vrijeme

Pohranjuje podatke tipa Datum i vrijeme. Vrsta podataka o datumu i vremenu

Vrsta podataka Opis Veličina spremišta Točnost Donji domet Gornji raspon
Datum vrijeme Koristi se za određivanje datuma i vremena od 1. siječnja 1753. do 31. prosinca 9999. Točnost je 3,33 milisekunde. 8 bajtova Zaokruženo na korake od .000, .003, .007 1753-01-01 9999-12-31
malo vrijeme Koristi se za određivanje datuma i vremena od 1. siječnja 0001. do 31. prosinca 9999. Točnost je 100 nanosekundi 4 bajta, fiksno 1 minuta 1900-01-01 2079-06-06
datum Koristi se za pohranu samo od 1. siječnja 0001. do 31. prosinca 9999 3 bajta, fiksno 1 dan 0001-01-01 9999-12-31
vrijeme Koristi se za pohranu samo vremenskih vrijednosti s točnošću od 100 nanosekundi. 5 bajtova 100 nanosekundi 00: 00: 00.0000000 23: 59: 59,9999999
datum-pomak Slično vremenu podataka, ali ima pomak vremenske zone 10 bajtova 100 nanosekundi 0001-01-01 9999-12-31
datum i vrijeme2 Koristi se za određivanje datuma i vremena od 1. siječnja 0001. do 31. prosinca 9999 6 bajtova 100 nanosekundi 0001-01-01 9999-12-31

Primjer upita:

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

Izlaz: '2030-01-01'

Nizovi znakova

Ova se kategorija odnosi na tip znaka. Omogućuje korisniku da definira tip podataka koji može biti fiksne i promjenjive duljine. Ima četiri vrste podataka. Tipovi podataka znakovnih nizova

Vrsta podataka Opis Donja granica Gornja granica Memorija
ugljen To je niz znakova fiksne širine. Pohranjuje najviše 8000 znakova. 0 znakova 8000 znakova n bajtova
varchar Ovo je niz znakova s ​​promjenjivom širinom 0 znakova 8000 znakova n bajtova + 2 bajta
varchar (maks.) Ovo je niz znakova s ​​promjenjivom širinom. Pohranjuje najviše 1.073.741.824 znakova. 0 znakova 2 31 znak n bajtova + 2 bajta
tekst Ovo je niz znakova s ​​promjenjivom širinom. Pohranjuje maksimalno 2 GB tekstualnih podataka. 0 znakova 2.147.483.647 znakova n bajtova + 4 bajta

Primjer upita:

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

Izlaz: ovo je tip podataka znaka

Nizovi znakova Unicode

Ova kategorija pohranjuje čitav raspon Unicode znakova koji koristi UTF-16 kodiranje znakova. Tipovi podataka niza znakova Unicode

Vrsta podataka Opis Donja granica Gornja granica Memorija
nchar To je Unicode niz fiksne širine 0 znakova 4000 znakova 2 puta n bajtova
nvarchar To je unicode niz promjenjive širine 0 znakova 4000 znakova 2 puta n bajtova + 2 bajta
ntekst To je unicode niz promjenjive širine 0 znakova 1.073.741.823 čar 2 puta duži niz

Primjer upita:

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

Izlaz: Ovo je nCharacter tip podataka

Binarni niz

Ova kategorija sadrži binarni niz fiksne i promjenjive duljine. Vrste podataka binarnih nizova

Vrsta podataka Opis Donja granica Gornja granica Memorija
binarni To je binarni niz fiksne širine. Pohranjuje maksimalno 8000 bajtova. 0 bajtova 8000 bajtova n bajtova
varbinarni Ovo je binarni niz promjenjive širine. Pohranjuje maksimalno 8000 bajtova 0 bajtova 8000 bajtova Stvarna duljina unesenih podataka + 2 bajta
slika Ovo je binarni niz promjenjive širine. Pohranjuje najviše 2 GB. 0 bajtova 2.147.483.647 bajtova

Primjer upita:

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

Izlaz: 0x000C

Ostali tipovi podataka

To su druge različite vrste podataka s opisom u nastavku-

Vrsta podataka Opis
Pokazivač Njegov izlaz je stupac sp_cursor_list i sp_describe_cursor. Vraća ime varijable kursora.
Redna verzija Verzija označava redove tablice.
Hijerarhija Ovaj tip podataka predstavlja položaj u hijerarhiji
Jedinstveni identifikator Pretvorba iz izraza znakova.
Sql_variant Pohranjuje vrijednosti tipova podataka podržanih od SQL poslužitelja.
XML Pohranjuje XML podatke u stupac.
Tip prostorne geometrije Predstavlja podatke u ravnom koordinatnom sustavu.
Tip prostorne geografije Predstavlja podatke u koordinatnom sustavu okrugle zemlje.
stol Pohranjuje skup rezultata za kasniju obradu.

Zanimljivosti!

  • Tip podataka CHAR brži je od VARCHAR tijekom dohvaćanja podataka.

Sažetak:

  • Svaki stupac u tablicama definira svojim tipom podataka tijekom stvaranja tablice.
  • Postoji šest glavnih kategorija i još jedna razna kategorija. Ostale vrste imaju devet podkategorija vrsta podataka.