MySQLHvad er de understøttede datatyper?MySQLDetaljer om datatyper i
MySQL datatyper
De typer af datafelter, der er defineret i MySQL, er meget vigtige for optimeringen af din database.
MySQL understøtter en række forskellige typer, som groft kan opdeles i tre kategorier: numeriske, dato/klokkeslæt og streng (tegn) typer.
Numerisk type
MySQL databaseAlle standard SQL numeriske datatyper er understøttet.
Disse typer omfatter strenge numeriske datatyper (INTEGER, SMALLINT, DECIMAL og NUMERIC) og omtrentlige numeriske datatyper (FLOAT, REAL og DOUBLE PRECISION).
Nøgleordet INT er et synonym for INTEGER og nøgleordet DEC er et synonym for DECIMAL.
BIT-datatypen indeholder bitfeltværdier og understøtter MyISAM-, MEMORY-, InnoDB- og BDB-tabeller.
Som en udvidelse til SQL-standarden understøtter MySQL også heltalstyperne TINYINT, MEDIUMINT og BIGINT.Tabellen nedenfor viser det nødvendige lager og område for hver heltalstype.
Type | størrelse | interval (signeret) | interval (usigneret) | brug |
---|---|---|---|---|
TINYINT | 1 byte | (-128, 127) | (0, 255) | lille heltalsværdi |
SMALLINT | 2 byte | (-32 768, 32 767) | (0, 65 535) | stor heltalsværdi |
MEDIUMINT | 3 byte | (-8 388 608, 8 388 607) | (0, 16 777 215) | stor heltalsværdi |
INT eller INTEGER | 4 byte | (-2 147 483 648, 2 147 483 647) | (0, 4 294 967 295) | stor heltalsværdi |
STORT | 8 byte | (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | meget stor heltalsværdi |
FLOAT | 4 byte | (-3.402 823 466 E+38, -1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E+38) | 0, (1.175 494 351 E-38, 3.402 823 466 E+38) | enkelt præcision floating point værdi |
DOBBELT | 8 byte | (-1.797 693 134 862 315 7 E+308, -2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | dobbelt præcision floating point værdi |
DECIMAL | For DECIMAL(M,D), hvis M>D, er det M+2, ellers er det D+2 | afhænger af værdierne af M og D | afhænger af værdierne af M og D | decimalværdi |
dato og klokkeslætstype
Dato- og tidstyper, der repræsenterer tidsværdier, er DATETIME, DATE, TIME STAMP, TIME og YEAR.
Hver tidstype har en række gyldige værdier og en "nul"-værdi, som bruges, når man angiver en ugyldig værdi, som MySQL ikke kan repræsentere.
TIMESTAMP-typen har en proprietær automatisk opdateringsfunktion, som vil blive beskrevet senere.
Type | størrelse (byte) | 范围 | format | brug |
---|---|---|---|---|
INFORMATION | 3 | 1000-01-01/9999-12-31 | ÅÅÅÅ-MM-DD | dato værdi |
TIME | 3 | ‘-838:59:59'/'838:59:59' | HH: MM: SS | tidsværdi eller varighed |
ÅR | 1 | 1901/2155 | ÅÅÅÅ | års værdi |
DATO TID | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | ÅÅÅÅ-MM-DD HH: MM: SS | Blandede dato- og tidsværdier |
TIDSSTEMPEL | 4 | 1970-01-01 00:00:00/2037 年某时 | ÅÅÅÅMMDD HHMMSS | blandede dato- og tidsværdier, tidsstempel |
String type
Strengtyper refererer til CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM og SET.Dette afsnit beskriver, hvordan disse typer fungerer, og hvordan du bruger dem i forespørgsler.
Type | størrelse | brug |
---|---|---|
CHAR | 0-255 bytes | streng med fast længde |
VARCHAR | 0-65535 bytes | streng med variabel længde |
LILLE BLOB | 0-255 bytes | binær streng på op til 255 tegn |
TINYTEXT | 0-255 bytes | kort tekststreng |
Blob | 0-65 535 bytes | lange tekstdata i binær form |
TEKST | 0-65 535 bytes | lange tekstdata |
MELLEMBLOB | 0-16 777 215 bytes | Mellemlange tekstdata i binær form |
MIDDELTEKST | 0-16 777 215 bytes | mellemlange tekstdata |
LANGBLOB | 0-4 294 967 295 bytes | Meget store tekstdata i binær form |
LANGTEKST | 0-4 294 967 295 bytes | meget store tekstdata |
CHAR- og VARCHAR-typerne ligner hinanden, men de lagres og hentes forskelligt.De adskiller sig også med hensyn til deres maksimale længde, og om efterliggende rum bevares.Ingen sagskonvertering udføres under opbevaring eller hentning.
Klasserne BINARY og VARBINARY ligner CHAR og VARCHAR, bortset fra at de indeholder binære strenge i stedet for ikke-binære strenge.Det vil sige, at de indeholder byte-strenge i stedet for tegnstrenge.Det betyder, at de ikke har noget tegnsæt, og sortering og sammenligning er baseret på de numeriske værdier af kolonneværdibytes.
En BLOB er et binært stort objekt, der kan indeholde en variabel mængde data.Der er 4 BLOB-typer: TINYBLOB, BLOB, MEDIUMBLOB og LONGBLOB.De er bare forskellige i den maksimale længde af den værdi, de kan holde.
Der er 4 TEKST typer: TINYTEXT, TEXT, MEDIUMTEXT og LONGTEXT.Disse svarer til de 4 BLOB-typer med samme maksimale længde og krav til opbevaring.
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) delt "Hvilke datatyper understøttes af MySQL? Detaljeret forklaring af datatyper i MySQL" for at hjælpe dig.
Velkommen til at dele linket til denne artikel:https://www.chenweiliang.com/cwl-466.html
Velkommen til Telegram-kanalen på Chen Weiliangs blog for at få de seneste opdateringer!
📚 Denne guide indeholder enorm værdi, 🌟Dette er en sjælden mulighed, gå ikke glip af det! ⏰⌛💨
Del og like hvis du har lyst!
Din deling og likes er vores kontinuerlige motivation!