MySQLHva er de støttede datatypene?MySQLDetaljer om datatyper i
MySQL-datatyper
Datafelttypene som er definert i MySQL er svært viktige for optimaliseringen av databasen.
MySQL støtter en rekke typer, som grovt kan deles inn i tre kategorier: numeriske, dato/klokkeslett og streng (tegn) typer.
Numerisk type
MySQL-databaseAlle standard SQL numeriske datatyper støttes.
Disse typene inkluderer strenge numeriske datatyper (INTEGER, SMALLINT, DECIMAL og NUMERIC), og omtrentlige numeriske datatyper (FLOAT, REAL og DOUBLE PRESISION).
Nøkkelordet INT er et synonym for INTEGER og nøkkelordet DEC er et synonym for DECIMAL.
BIT-datatypen inneholder bitfeltverdier og støtter MyISAM-, MEMORY-, InnoDB- og BDB-tabeller.
Som en utvidelse til SQL-standarden støtter MySQL også heltallstypene TINYINT, MEDIUMINT og BIGINT.Tabellen nedenfor viser lagringen og området som kreves for hver heltallstype.
Type | størrelse | område (signert) | område (usignert) | 用途 |
---|---|---|---|---|
TINYINT | 1 byte | (-128,127) | (0, 255) | liten heltallsverdi |
SMALLINT | 2 byte | (-32 768, 32 767) | (0, 65 535) | stor heltallsverdi |
MEDIUMINT | 3 byte | (-8 388 608, 8 388 607) | (0, 16 777 215) | stor heltallsverdi |
INT eller INTEGER | 4 byte | (-2 147 483 648, 2 147 483 647) | (0, 4 294 967 295) | stor heltallsverdi |
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) | veldig stor heltallsverdi |
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 presisjon flyttallverdi |
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) | dobbel presisjon flyttallverdi |
DESIMAL | For DESIMAL(M,D), hvis M>D, er det M+2, ellers er det D+2 | avhenger av verdien av M og D | avhenger av verdien av M og D | desimalverdi |
dato og klokkeslett
Dato- og tidstyper som representerer tidsverdier er DATETIME, DATE, TIME STAMP, TIME og YEAR.
Hver tidstype har en rekke gyldige verdier og en "null" verdi, som brukes når du spesifiserer en ugyldig verdi som MySQL ikke kan representere.
TIMESTAMP-typen har en proprietær automatisk oppdateringsfunksjon som vil bli beskrevet senere.
Type | størrelse (byte) | område | format | 用途 |
---|---|---|---|---|
INFORMASJON | 3 | 1000-01-01/9999-12-31 | ÅÅÅÅ-MM-DD | datoverdi |
TIME | 3 | ‘-838:59:59'/'838:59:59' | HH: MM: SS | tidsverdi eller varighet |
ÅR | 1 | 1901/2155 | ÅÅÅÅ | årsverdi |
DATO TID | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | ÅÅÅÅ-MM-DD HH: MM: SS | Blandede dato- og klokkeslettverdier |
TIMESTAMP | 4 | 1970-01-01 00:00:00/2037 年某时 | ÅÅÅÅMMDD HHMMSS | blandede dato- og tidsverdier, tidsstempel |
Strengetype
Strengtyper refererer til CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM og SET.Denne delen beskriver hvordan disse typene fungerer og hvordan du bruker dem i spørringer.
Type | størrelse | 用途 |
---|---|---|
CHAR | 0-255 byte | streng med fast lengde |
VARCHAR | 0-65535 byte | streng med variabel lengde |
LITEN BLOK | 0-255 byte | binær streng på opptil 255 tegn |
LITEN TEKST | 0-255 byte | kort tekststreng |
BLOB | 0-65 535 byte | lange tekstdata i binær form |
TEKST | 0-65 535 byte | lange tekstdata |
MIDDELS BLOB | 0-16 777 215 byte | Middels lange tekstdata i binær form |
MEDIUMTEKST | 0-16 777 215 byte | middels lange tekstdata |
LANGBLOB | 0-4 294 967 295 byte | Svært store tekstdata i binær form |
LANGTEKST | 0-4 294 967 295 byte | svært store tekstdata |
CHAR- og VARCHAR-typene er like, men de lagres og hentes forskjellig.De er også forskjellige når det gjelder maksimal lengde og om etterfølgende områder er bevart.Ingen sakskonvertering utføres under lagring eller henting.
Klassene BINARY og VARBINARY ligner på CHAR og VARCHAR, bortsett fra at de inneholder binære strenger i stedet for ikke-binære strenger.Det vil si at de inneholder byte-strenger i stedet for tegnstrenger.Dette betyr at de ikke har et tegnsett og sorterer og sammenligner basert på de numeriske verdiene til kolonneverdibytene.
En BLOB er et binært stort objekt som kan inneholde en variabel mengde data.Det er 4 BLOB-typer: TINYBLOB, BLOB, MEDIUMBLOB og LONGBLOB.De er bare forskjellige i maksimal lengde på verdien de kan holde.
Det er 4 TEKST-typer: TINYTEXT, TEXT, MEDIUMTEXT og LONGTEXT.Disse tilsvarer de 4 BLOB-typene, med samme maksimale lengde og lagringskrav.
Hope Chen Weiliang blogg ( https://www.chenweiliang.com/ ) delt "Hva er datatypene som støttes av MySQL? Detaljert forklaring av datatyper i MySQL" for å hjelpe deg.
Velkommen til å dele lenken til denne artikkelen:https://www.chenweiliang.com/cwl-466.html
Velkommen til Telegram-kanalen til Chen Weiliangs blogg for å få de siste oppdateringene!
📚 Denne guiden inneholder enorm verdi, 🌟Dette er en sjelden mulighet, ikke gå glipp av den! ⏰⌛💨
Del og lik om du vil!
Din deling og likes er vår kontinuerlige motivasjon!