SQL-datatyper forklaret og MySQL-syntakseksempler

SQL-datatyper

Hver kolonne i en databasetabel skal have et navn og en datatype.

En SQL-udvikler skal beslutte, hvilken type data der skal gemmes inde i hver kolonne, når der oprettes en tabel. Datatypen er en retningslinje for SQL til at forstå, hvilken type data der forventes inde i hver kolonne, og den identificerer også, hvordan SQL vil interagere med de lagrede data.

MySQL datatyper

SQL-generelle datatyper består af følgende:

  1. En tekst- og / eller numerisk baseret værdi, ofte omtalt som en STRING
  2. En numerisk værdi, ofte omtalt som en INTEGER
  3. En kalender- og / eller urbaseret værdi, ofte omtalt som DATO eller TID
  4. En databasespecifik værdi, såsom et boolesk flag (to-valg), en matrix, der gemmer flere værdier inden for et datapunkt

Tekstdatatyper:

Datatype Beskrivelse
CHAR (størrelse) Har en streng med fast længde (kan indeholde bogstaver, tal og specialtegn). Den faste størrelse er angivet i parentes. Kan gemme op til 255 tegn
VARCHAR (størrelse) Har en streng med variabel længde (kan indeholde bogstaver, tal og specialtegn). Den maksimale størrelse er angivet i parentes. Kan gemme op til 255 tegn. Bemærk: Hvis du lægger en større værdi end 255, konverteres den til en TEKST-type
TINYTEXT Har en streng med en maksimal længde på 255 tegn
TEKST Har en streng med en maksimal længde på 65.535 tegn
BLOB Til BLOB'er (Binary Large OBjects). Har plads til 65.535 byte data
MEDIUMTEXT Har en streng med en maksimal længde på 16.777.215 tegn
MEDIUMBLOB Til BLOB'er (Binary Large OBjects). Har plads til 16.777.215 bytes data
LONGTEXT Har en streng med en maksimal længde på 4.294.967.295 tegn
LONGBLOB Til BLOB'er (Binary Large OBjects). Har op til 4.294.967.295 bytes data
ENUM (x, y, z osv.) Lad dig indtaste en liste over mulige værdier. Du kan angive op til 65535 værdier på en ENUM-liste. Hvis der indsættes en værdi, der ikke er på listen, indsættes en tom værdi. Bemærk: Værdierne sorteres i den rækkefølge, du indtaster dem. Du indtaster de mulige værdier i dette format: ENUM ('X', 'Y', 'Z')
SÆT Svarende til ENUM bortset fra at SET kan indeholde op til 64 listeelementer og kan gemme mere end et valg

Antal datatyper:

Datatype Beskrivelse
TINYINT (størrelse) -128 til 127 normale. 0 til 255 UNSIGNED *. Det maksimale antal cifre kan angives i parentes
SMALLINT (størrelse) -32768 til 32767 normal. 0 til 65535 UNSIGNED *. Det maksimale antal cifre kan angives i parentes
MEDIUMINT (størrelse) -8388608 til 8388607 normal. 0 til 16777215 UNSIGNED *. Det maksimale antal cifre kan angives i parentes
INT (størrelse) -2147483648 til 2147483647 normal. 0 til 4294967295 UNSIGNED *. Det maksimale antal cifre kan angives i parentes
BIGINT (størrelse) -9223372036854775808 til 9223372036854775807 normal. 0 til 18446744073709551615 UNSIGNED *. Det maksimale antal cifre kan angives i parentes
FLOAT (størrelse, d) Et lille tal med et flydende decimaltegn. Det maksimale antal cifre kan specificeres i parameteren størrelse. Det maksimale antal cifre til højre for decimaltegnet er specificeret i parameteren d
DOBBELT (størrelse, d) Et stort tal med et flydende decimaltegn. Det maksimale antal cifre kan specificeres i parameteren størrelse. Det maksimale antal cifre til højre for decimaltegnet er specificeret i parameteren d
DECIMAL (størrelse, d) EN DOBBEL gemt som en streng, der giver mulighed for et fast decimaltegn. Det maksimale antal cifre kan specificeres i parameteren størrelse. Det maksimale antal cifre til højre for decimaltegnet er specificeret i parameteren d

Datodatatyper:

Datatype Beskrivelse
DATO() En dato. Format: ÅÅÅÅ-MM-DD Bemærk: Det understøttede interval er fra '1000-01-01' til '9999-12-31'
DATO TID() En kombination af dato og tid. Format: ÅÅÅÅ-MM-DD HH: MI: SS Bemærk: Det understøttede interval er fra '1000-01-01 00:00:00' til '9999-12-31 23:59:59'
TIDSSTEMPEL() Et tidsstempel. TIMESTAMP-værdier er lagret som antallet af sekunder siden Unix-epoken ('1970-01-01 00:00:00' UTC). Format: ÅÅÅÅ-MM-DD HH: MI: SS Bemærk: Det understøttede interval er fra '1970-01-01 00:00:01' UTC til '2038-01-09 03:14:07' UTC
TID() En tid. Format: HH: MI: SS Bemærk: Det understøttede interval er fra '-838: 59: 59' til '838: 59: 59'
ÅR() Et år i to- eller firecifret format. Bemærk: Værdier tilladt i firecifret format: 1901 til 2155. Værdier tilladt i tocifret format: 70 til 69, der repræsenterer år fra 1970 til 2069

Endelig er der et par andre datatyper, som du vil bruge:

Andre datatyper

Datatype Beskrivelse
BOOLEAN Butikker TRUEeller FALSEværdier
ARRAY En sæt længde og bestilt samling af elementer
MULTISET En variabel længde og uordnet samling af elementer
XML Gemmer XML-data