SQL datatyper

Datatyper og rækkevidder brugt af Microsoft Access, MySQL og SQL Server.

Microsoft Access datatyper

Datatype Beskrivelse Lagre
Text Brug til tekst eller kombinationer af tekst og tal. Maksimalt 255 tegn.  
Memo

Memo bruges til større mængder tekst. Kan gemme op til 65,536 tegn.

Bemærk: Memo-felter kan ikke sorteres. De er dog søgbare.

 
Byte Tillader tal mellem 0 og 255. 1 byte
Integer Tillader tal mellem -32,768 og 32,767. 2 byte
Long Tillader alle tal mellem -2,147,483,648 og 2,147,483,647. 4 bytes
Single Enkel præcision floating point. Håndterer de fleste decimaler. 4 bytes
Double Dobbelt præcision floating point. Håndterer de fleste decimaler. 8 byte
Currency

Brug til valuta. Støtter 15 cifre plus 4 decimaler.

Tip: Vælg den valuta, du vil bruge.

8 byte
AutoNumber AutoNumber-felter tildeler automatisk et nummer til hver post, normalt starter ved 1. 4 bytes
Date/Time Brug til dato og tid 8 byte
Ja/Nej

Logiske felter, der kan vises som Ja/Nej, Sand/Falsk eller Tænd/Sluk.

Brug konstanterne True og False i koden (lignende 1 og 0)

Bemærk: Null-værdier er ikke tilladt i Yes/No-felter.

1 bit
Ole Object Kan gemme billeder, lyd, video eller andre BLOBs (Binary Large OBjects) Op til 1 GB
Hyperlink Indeholder links til andre filer, herunder websider.  
Lookup Wizard Lader dig oprette en liste over valgmuligheder, som kan vælges fra nedenstående liste. 4 bytes

MySQL datatyper

I MySQL findes der tre hovedtyper: tekst, tal og dato/tid.

Teksttype:

Datatype Beskrivelse
CHAR(DECIMAL() Gem fast længde strings (kan indeholde bogstaver, tal og specialtegn). Angiv længden i parenteser. Maksimalt 255 tegn.
VARCHAR(DECIMAL()

Gem variabel længde strings (kan indeholde bogstaver, tal og specialtegn). Angiv maksimal længde i parenteser. Maksimalt 255 tegn.

注释:如果值的长度大于 255,则被转换为 TEXT 类型。

TINYTEXT Kommentar: Hvis værdilængden er større end 255, konverteres den til TEXT-type.
TINYTEXT Opbevarer streng med maksimal længde på 255 tegn.
TEXT Opbevarer streng med maksimal længde på 65,535 tegn.
BLOB Bruges til BLOBs (Binary Large OBjects). Opbevarer op til 65,535 bytes data.
MEDIUMTEXT Opbevarer streng med maksimal længde på 16,777,215 tegn.
MEDIUMBLOB Bruges til BLOBs (Binary Large OBjects). Opbevarer op til 16,777,215 bytes data.
LONGTEXT Opbevarer streng med maksimal længde på 4,294,967,295 tegn.
LONGBLOBBruges til BLOBs (Binary Large OBjects). Opbevarer op til 4,294,967,295 bytes data.,ENUM(,xy

z

,etc.)

Tillader indtastning af en liste over mulige værdier. Du kan angive op til 65535 værdier i ENUM-listen. Hvis den indsatte værdi ikke findes i listen, indsættes en tom værdi.

Kommentar: Disse værdier gemmes i den rækkefølge, du indtaster dem. Indtast mulige værdier i denne format: ENUM('X','Y','Z')

Number-type:

Datatype Beskrivelse
SETDECIMAL() Lignende ENUM, men SET kan kun indeholde op til 64 elementer, men SET kan gemme mere end én værdi.
SMALLINT(DECIMAL() -32768 til 32767 almindelig. 0 til 65535 unsigned*. Maksimalt antal cifre specificeret i parenteser.
MEDIUMINT(DECIMAL() -8388608 til 8388607 almindelig. 0 til 16777215 unsigned*. Maksimalt antal cifre specificeret i parenteser.
INT(DECIMAL() -2147483648 til 2147483647 almindelig. 0 til 4294967295 unsigned*. Maksimalt antal cifre specificeret i parenteser.
BIGINT(DECIMAL() -9223372036854775808 til 9223372036854775807 almindelig. 0 til 18446744073709551615 unsigned*. Maksimalt antal cifre specificeret i parenteser.
FLOAT(DECIMAL(,størrelse) Tal med flydende decimaltalspunkt. Maksimalt antal cifre specificeret i parenteser. Maksimalt antal cifre til højre for decimaltallet specificeret i parameteren d.
DOUBLE(DECIMAL(,størrelse) DOUBLE(
Med flydende decimalpunkt store tal. Angiv maksimalt antal cifre i parentes. Angiv maksimalt antal decimalcifre i d-argumentet.DECIMAL(,størrelse) d

Som streng gemt DOUBLE-type, tillader fast decimalpunkt.

Date type:

Datatype Beskrivelse
* Disse heltalsTyper har ekstra valg UNSIGNED. Normalt kan heltal være negative eller positive. Hvis du tilføjer UNSIGNED-attributten, starter rækken fra 0 i stedet for en negativ værdi.

DATE()

Dato. Format: YYYY-MM-DD

Kommentar: Støttet område er fra '1000-01-01' til '9999-12-31'

DATETIME()

* Kombination af dato og tid. Format: YYYY-MM-DD HH:MM:SS

Kommentar: Støttet område er fra '1000-01-01 00:00:00' til '9999-12-31 23:59:59'

TIMESTAMP()

* Tidsstempel. TIMESTAMP-værdier bruger en Unix æra ('1970-01-01 00:00:00' UTC) til i dag for at gemme. Format: YYYY-MM-DD HH:MM:SS

TIME()

Tid. Format: HH:MM:SS

Kommentar: Støttet område er fra '-838:59:59' til '838:59:59'

YEAR()

2-cifret eller 4-cifret år.

Kommentar: 4-cifret format tillader værdier: 1901 til 2155. 2-cifret format tillader værdier: 70 til 69, hvilket repræsenterer fra 1970 til 2069.

* Selvom DATETIME og TIMESTAMP returnerer samme format, fungerer de meget forskelligt. I INSERT eller UPDATE-forespørgsler sætter TIMESTAMP automatisk sig selv til den nuværende dato og klokkeslæt. TIMESTAMP accepterer også forskellige formater, såsom YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD eller YYMMDD.

SQL Server datatyper

Karakter streng:

Datatype Beskrivelse Lagre
char(n) Fast længde streng. Maksimalt 8,000 tegn. n
varchar(n) Variabel længde streng. Maksimalt 8,000 tegn.  
varchar(max) Variabel længde streng. Maksimalt 1,073,741,824 tegn.  
text Variabel længde streng. Maksimalt 2GB tegndata.  

Unicode-streng:

Datatype Beskrivelse Lagre
nchar(n) Fast længde Unicode data. Maksimalt 4,000 tegn.  
nvarchar(n) Variabel længde Unicode data. Maksimalt 4,000 tegn.  
nvarchar(max) Variabel længde Unicode data. Maksimalt 536,870,912 tegn.  
ntext Variabel længde Unicode data. Maksimalt 2GB tegn data.  

Binary-type:

Datatype Beskrivelse Lagre
bit Tillader 0, 1 eller NULL  
binary(n) Fast længde binær data. Maksimalt 8,000 byte.  
varbinary(n) Variabel længde binær data. Maksimalt 8,000 byte.  
varbinary(max) Variabel længde binær data. Maksimalt 2GB byte.  
image Variabel længde binær data. Maksimalt 2GB.  

Number-type:

Datatype Beskrivelse Lagre
tinyint Tillader alle tal mellem 0 og 255. 1 byte
smallint Tillader alle tal mellem -32,768 og 32,767. 2 byte
int Tillader alle tal mellem -2,147,483,648 og 2,147,483,647. 4 bytes
bigint Tillader alle tal mellem -9,223,372,036,854,775,808 og 9,223,372,036,854,775,807. 8 byte
decimal(p,s)

Fast præcision og的比例数字。Tillader tal fra -10^38 +1 til 10^38 -1.

p parameter angiver det maksimale antal decimaler, der kan gemmes (til højre og venstre for decimalt tegn). p skal være et tal mellem 1 og 38. Standardværdien er 18.

s parameter angiver det maksimale antal decimaler, der kan gemmes til højre for decimalt tegn. s skal være et tal mellem 0 og p. Standardværdien er 0.

5-17 byte
numeric(p,s)

Fast præcision og的比例数字。Tillader tal fra -10^38 +1 til 10^38 -1.

p parameter angiver det maksimale antal decimaler, der kan gemmes (til højre og venstre for decimalt tegn). p skal være et tal mellem 1 og 38. Standardværdien er 18.

s parameter angiver det maksimale antal decimaler, der kan gemmes til højre for decimalt tegn. s skal være et tal mellem 0 og p. Standardværdien er 0.

5-17 byte
smallmoney Valuta data mellem -214,748.3648 og 214,748.3647. 4 bytes
money Valuta data mellem -922,337,203,685,477.5808 og 922,337,203,685,477.5807. 8 byte
float(n)

Flydende præcisionstal data fra -1.79E + 308 til 1.79E + 308.

Parameter n angiver, om dette felt gemmer 4 byte eller 8 byte. float(24) gemmer 4 byte, mens float(53) gemmer 8 byte. Standardværdien for n er 53.

4 eller 8 bytes
real Flydende præcisionsnummerdata fra -3.40E + 38 til 3.40E + 38. 4 bytes

Date type:

Datatype Beskrivelse Lagre
datetime Fra 1. januar 1753 til 31. december 9999, præcision på 3.33 millisekunder. 8 bytes
datetime2 Fra 1. januar 1753 til 31. december 9999, præcision på 100 nanosekunder. 6-8 bytes
smalldatetime Fra 1. januar 1900 til 6. juni 2079, præcision på 1 minut. 4 bytes
date Lagre kun dato. Fra 1. januar 0001 til 31. december 9999. 3 bytes
time Lagre kun tid. Præcision på 100 nanosekunder. 3-5 bytes
datetimeoffset Som datetime2, plus tidszoneafvigelse. 8-10 bytes
timestamp Lagre unikke tal, som opdateres hver gang en række oprettes eller ændres. Timestamp er baseret på intern klokke og svarer ikke til virkelig tid. Hver tabel kan kun have én timestamp-variabel.  

Andre datatyper:

Datatype Beskrivelse
sql_variant Lagre data af forskellige datatyper, op til 8,000 bytes, med undtagelse af text, ntext og timestamp.
uniqueidentifier Lagre unikke identifikatorer (GUID).
xml Lagre formaterede XML-data. Maksimalt 2GB.
cursor Lagre referencer til peger, der bruges til databaseoperationer.
table Lagre resultaterne til senere behandling.