logo

SQL-datatyper

Datatyper brukes til å representere arten av dataene som kan lagres i databasetabellen. For eksempel, i en bestemt kolonne i en tabell, hvis vi ønsker å lagre en strengtype data, må vi deklarere en strengdatatype for denne kolonnen.

Datatyper er hovedsakelig klassifisert i tre kategorier for hver database.

vlc last ned YouTube-videoer
  • String Datatyper
  • Numeriske datatyper
  • Dato og klokkeslett Datatyper

Datatyper i MySQL, SQL Server og Oracle-databaser

MySQL-datatyper

En liste over datatyper som brukes i MySQL-databasen. Dette er basert på MySQL 8.0.

MySQL-strengdatatyper

CHAR(Størrelse) Den brukes til å spesifisere en streng med fast lengde som kan inneholde tall, bokstaver og spesialtegn. Størrelsen kan være fra 0 til 255 tegn. Standard er 1.
VARCHAR(Størrelse) Den brukes til å spesifisere en streng med variabel lengde som kan inneholde tall, bokstaver og spesialtegn. Størrelsen kan være fra 0 til 65535 tegn.
BINÆR(Størrelse) Den er lik CHAR(), men lagrer binære bytestrenger. Størrelsesparameteren spesifiserer kolonnelengden i bytene. Standard er 1.
VARBINARY(Størrelse) Den er lik VARCHAR(), men lagrer binære bytestrenger. Størrelsesparameteren spesifiserer maksimal kolonnelengde i byte.
Tekststørrelse) Den har en streng som kan inneholde en maksimal lengde på 255 tegn.
TINYTEXT Den har en streng med maksimal lengde på 255 tegn.
MEDIUMTEKST Den har en streng med en maksimal lengde på 16 777 215.
LANGTEKST Den har en streng med en maksimal lengde på 4 294 967 295 tegn.
ENUM(val1; val2; val3,...) Den brukes når et strengobjekt kun har én verdi, valgt fra en liste over mulige verdier. Den inneholder 65535 verdier i en ENUM-liste. Hvis du setter inn en verdi som ikke er i listen, vil en tom verdi settes inn.
SET( val1,val2,val3,...) Den brukes til å spesifisere en streng som kan ha 0 eller flere verdier, valgt fra en liste over mulige verdier. Du kan liste opp til 64 verdier samtidig i en SET-liste.
BLOB(størrelse) Den brukes til BLOB-er (binære store objekter). Den kan inneholde opptil 65 535 byte.

MySQL numeriske datatyper

BIT(størrelse) Den brukes for en bitverditype. Antall bits per verdi er spesifisert i størrelse. Størrelsen kan være 1 til 64. Standardverdien er 1.
INT(størrelse) Den brukes for heltallsverdien. Det signerte området varierer fra -2147483648 til 2147483647 og usignert område varierer fra 0 til 4294967295. Størrelsesparameteren spesifiserer den maksimale visningsbredden som er 255.
HELTAL(størrelse) Den er lik INT(størrelse).
FLOAT(størrelse, d) Det brukes til å angi et flyttallnummer. Størrelsesparameteren spesifiserer det totale antallet sifre. Antall sifre etter desimaltegnet er spesifisert med d parameter.
FLYTTE(p) Det brukes til å angi et flyttallnummer. MySQL brukte p-parameteren for å bestemme om du skal bruke FLOAT eller DOUBLE. Hvis p er mellom 0 og 24, blir datatypen FLOAT (). Hvis p er fra 25 til 53, blir datatypen DOUBLE().
DOBBEL(størrelse, d) Det er et flyttall i normal størrelse. Størrelsesparameteren spesifiserer det totale antallet sifre. Antall sifre etter desimalen angis av parameteren d.
DESIMAL(størrelse; d) Den brukes til å angi et fast punktnummer. Størrelsesparameteren spesifiserer det totale antallet sifre. Antall sifre etter desimalparameteren er spesifisert av d parameter. Maksimal verdi for størrelsen er 65, og standardverdien er 10. Maksimal verdi for d er 30, og standardverdien er 0.
DEC(størrelse; d) Den er lik DESIMAL(størrelse, d).
BOOL Den brukes til å spesifisere boolske verdier sant og usant. Null anses som usant, og verdier som ikke er null anses som sanne.

MySQL dato- og klokkeslettdatatyper

DATO Den brukes til å spesifisere datoformat ÅÅÅÅ-MM-DD. Det støttede området er fra '1000-01-01' til '9999-12-31'.
DATETIME(fsp) Den brukes til å spesifisere dato og klokkeslett kombinasjon. Formatet er ÅÅÅÅ-MM-DD tt:mm:ss. Det støttede området er fra '1000-01-01 00:00:00' til 9999-12-31 23:59:59'.
TIMESTAMP(fsp) Den brukes til å spesifisere tidsstemplet. Verdien er lagret som antall sekunder siden Unix-epoken ('1970-01-01 00:00:00' UTC). Formatet er ÅÅÅÅ-MM-DD tt:mm:ss. Det støttede området er fra '1970-01-01 00:00:01' UTC til '2038-01-09 03:14:07' UTC.
TID (fsp) Den brukes til å spesifisere tidsformatet. Formatet er tt:mm:ss. Det støttede området er fra '-838:59:59' til '838:59:59'
ÅR Den brukes til å angi et år i firesifret format. Verdier tillatt i firesifret format fra 1901 til 2155, og 0000.

SQL Server-datatyper

SQL Server-strengdatatype

røye(n) Det er en datatype for tegnstrenger med fast bredde. Størrelsen kan være opptil 8000 tegn.
varchar(n) Det er en datatype for tegnstrenger med variabel bredde. Størrelsen kan være opptil 8000 tegn.
varchar(maks) Det er en variabel bredde tegnstreng datatyper. Størrelsen kan være opptil 1 073 741 824 tegn.
tekst Det er en datatype for tegnstrenger med variabel bredde. Størrelsen kan være opptil 2 GB med tekstdata.
nchar Det er en Unicode-strengdatatype med fast bredde. Størrelsen kan være opptil 4000 tegn.
nvarchar Det er en Unicode-strengdatatype med variabel bredde. Størrelsen kan være opptil 4000 tegn.
ntekst Det er en Unicode-strengdatatype med variabel bredde. Størrelsen kan være opptil 2 GB med tekstdata.
binær(n) Det er en binær strengdatatype med fast bredde. Størrelsen kan være opptil 8000 byte.
varbinær Det er en binær strengdatatype med variabel bredde. Størrelsen kan være opptil 8000 byte.
bilde Det er også en binær strengdatatype med variabel bredde. Størrelsen kan være opptil 2 GB.

SQL Server numeriske datatyper

bit Det er et heltall som kan være 0, 1 eller null.
bitteliten Den tillater hele tall fra 0 til 255.
Smallint Den tillater hele tall mellom -32 768 og 32 767.
Int Den tillater hele tall mellom -2.147.483.648 og 2.147.483.647.
bigint Den tillater hele tall mellom -9.223.372.036.854.775.808 og 9.223.372.036.854.775.807.
flyte(n) Den brukes til å spesifisere flytende presisjonstalldata fra -1,79E+308 til 1,79E+308. n-parameteren indikerer om feltet skal inneholde 4 eller 8 byte. Standardverdien for n er 53.
ekte Det er et flytende presisjonstalldata fra -3.40E+38 til 3.40E+38.
penger Den brukes til å spesifisere pengedata fra -922,337,233,685,477,5808 til 922,337,203,685,477,5807.

SQL Server Dato og Tid Datatype

dato tid Den brukes til å spesifisere dato og klokkeslett kombinasjon. Den støtter området fra 1. januar 1753 til 31. desember 9999 med en nøyaktighet på 3,33 millisekunder.
dato klokkeslett 2 Den brukes til å spesifisere dato og klokkeslett kombinasjon. Den støtter området fra 1. januar 0001 til 31. desember 9999 med en nøyaktighet på 100 nanosekunder
Dato Den brukes kun til å lagre dato. Den støtter området fra 1. januar 0001 til 31. desember 9999
tid Den lagrer kun tid med en nøyaktighet på 100 nanosekunder
tidsstempel Den lagrer et unikt nummer når en ny rad blir opprettet eller endret. Tidsstemplingsverdien er basert på en intern klokke og tilsvarer ikke sanntid. Hver tabell kan bare inneholde engangsstempelvariabel.

SQL Server Andre datatyper

avl trerotasjon
SQL_variant Den brukes for ulike datatyper bortsett fra tekst, tidsstempel og ntext. Den lagrer opptil 8000 byte med data.
XML Den lagrer XML-formaterte data. Maks 2 GB.
markøren Den lagrer en referanse til en markør som brukes til databaseoperasjoner.
bord Den lagrer resultatsett for senere behandling.
unik identifikator Den lagrer GUID (globalt unik identifikator).

Oracle-datatyper

Oracle String datatyper

CHAR(størrelse) Den brukes til å lagre tegndata innenfor den forhåndsdefinerte lengden. Den kan lagres opptil 2000 byte.
NCHAR(størrelse) Den brukes til å lagre nasjonale tegndata innenfor den forhåndsdefinerte lengden. Den kan lagres opptil 2000 byte.
VARCHAR2(størrelse) Den brukes til å lagre variable strengdata innenfor den forhåndsdefinerte lengden. Den kan lagres opptil 4000 byte.
VARCHAR(STØRRELSE) Det er det samme som VARCHAR2(størrelse). Du kan også bruke VARCHAR(størrelse), men det anbefales å bruke VARCHAR2(størrelse)
NVARCHAR2(størrelse) Den brukes til å lagre Unicode-strengdata innenfor den forhåndsdefinerte lengden. Vi må spesifisere størrelsen på NVARCHAR2-datatypen. Den kan lagres opptil 4000 byte.

Oracle numeriske datatyper

NUMBER(p, s) Den inneholder presisjon p og skala s. Presisjonen p kan variere fra 1 til 38, og skalaen s kan variere fra -84 til 127.
FLYTTE(p) Det er en undertype av datatypen NUMBER. Presisjonen p kan variere fra 1 til 126.
BINARY_FLOAT Den brukes for binær presisjon (32-bit). Den krever 5 byte, inkludert lengdebyte.
BINARY_DOUBLE Den brukes for dobbel binær presisjon (64-bit). Den krever 9 byte, inkludert lengdebyte.

Oracle dato- og klokkeslettdatatyper

DATO Den brukes til å lagre et gyldig dato- og klokkeslettformat med en fast lengde. Dens rekkevidde varierer fra 1. januar 4712 f.Kr. til 31. desember 9999 e.Kr.
TIDSSTIMPEL Den brukes til å lagre gyldig dato i ÅÅÅÅ-MM-DD med tid tt:mm:ss-format.

Oracle Large Object Data Types (LOB-typer)

BLOB Den brukes til å spesifisere ustrukturerte binære data. Rekkevidden går opp til 232-1 byte eller 4 GB.
BFILE Den brukes til å lagre binære data i en ekstern fil. Rekkevidden går opp til 232-1 byte eller 4 GB.
CLOB Den brukes for enkeltbyte-tegndata. Rekkevidden går opp til 232-1 byte eller 4 GB.
NCLOB Den brukes til å spesifisere enkeltbyte eller fast lengde multibyte nasjonalt tegnsett (NCHAR) data. Rekkevidden er opptil 232-1 byte eller 4 GB.
RAW(størrelse) Den brukes til å spesifisere rå binære data med variabel lengde. Rekkevidden er opptil 2000 byte per rad. Dens maksimale størrelse må spesifiseres.
LANG RÅ Den brukes til å spesifisere rå binære data med variabel lengde. Dens rekkevidde opp til 231-1 byte eller 2 GB, per rad.