Kategorier av MySQL -datatyper:
MySQL -datatyper er delt inn i følgende kategorier.
Datatypene relatert til hver gruppe har forklart nedenfor med eksempler.
Strengdatatype:
Strengdatatypen kan inneholde eventuelle alfabetiske og numeriske tegn for å definere en streng med liten og stor tekst, for eksempel navn, adresse, beskrivelse osv. Det binære innholdet, for eksempel et bilde eller lydfil, kan lagres innen strengdatatype. Strengdatatypene støttet i MySQL er vist nedenfor med størrelse og beskrivelse.
Strengdatatype | Beskrivelse |
Char (N) | Det brukes til å lagre en streng med et fast antall tegn. Den kan inneholde maksimalt 255 tegn. Argumentverdien definerer lengden på strengen. Hvis verdien av røyefeltet inneholder mindre karakter enn n Verdi, da vil plassverdien bli lagt til for de gjenværende tegnene. |
Varchar (n) | Det brukes til å lagre en streng med variabelt antall tegn. Den kan også inneholde maksimalt 255 tegn. Argumentverdien definerer lengden på strengen. Det kaster ikke bort plass som char -datatypen. |
TinyText (n) | Det fungerer som en Varchar -datatype og kan lagre maksimalt 255 tegn. |
Tekst (n) | Den brukes til å lagre større strengverdier som inneholder maksimalt 65 535 tegn. |
MediumText (N) | Den lagrer en større tekstverdi enn tekstdatatypen som kan inneholde maksimalt 16 777 215 tegn. |
LongText (N) | Den lagrer større tekstverdier enn mediumtekstdatatypen som inneholder maksimalt 4 GB eller 4.294.967.295 tegn. |
Binær (n) | Den brukes til å lagre binære tegn, og disse datets lengde er løst. Den kan lagre maksimalt 255 tegn. |
Varbinary (n) | Det fungerer som den binære datatypen, men lengden er ikke løst. |
Enum (v1, v2, v3, ..., vn) | Den fulle form for enum er oppregning som brukes til å velge en enkelt verdi fra flere verdier. Den numeriske indeksen brukes til å definere strengverdiene. Det kan ha maksimalt 65 535 verdier. |
Sett (v1, v2, v3, ..., vn) | Den brukes til å velge 0 eller flere verdier fra listen over verdier. Det kan lagre maksimalt 64 verdier. |
Numerisk datatype:
Numerisk datatype -felt lagrer hele nummeret som ID, sikkerhetsnummer osv., eller brøknummeret, for eksempel pris, cgpa osv. Ulike typer numeriske datatyper har beskrevet nedenfor.
Numerisk datatype | Beskrivelse |
Bit (n) | Det brukes til å lagre bitverdier. Antall biter per verdi er definert av n her. Den kan lagre verdier fra 1 til 64. Standardverdien er 1. |
Bool/boolsk | Det brukes til å lagre sanne eller falske verdier. 0 verdi regnes som en Falsk verdi, og ethvert ikke-null nummer anses som et ekte verdi. |
Tinyint (N) | Det brukes til å lagre en veldig liten heltallverdi. Den kan lagre verdier fra -128 til 127 for signerte heltall og 0 til 255 for et usignert heltall. De n definerer lengden på tallet. |
SmallInt (n) | Det brukes til å lagre en liten størrelse heltallverdi. Den kan lagre verdier fra - -32768 til 32767 for signerte heltall og 0 til 65535 for et usignert heltall. De n definerer lengden på tallet. |
MediumInt (N) | Det brukes til å lagre en mellomstor heltallverdi. Den kan lagre verdier fra -8388608 til 8388607 for signerte heltall og 0 til 16777215 for et usignert heltall. De n definerer lengden på tallet. |
Int (n)/ heltall (n) | Det brukes til å lagre en heltallverdi. Den kan lagre verdier fra -2147483648 til 2147483647 for signerte heltall og 0 til 4294967295 for et usignert heltall. De n definerer lengden på tallet. |
Bigint (N) | Det brukes til å lagre en stor størrelse heltallverdi. Den kan lagre verdier fra -9223372036854775808 til 9223372036854775807 for signerte heltall og 0 til 18446744073709551615 for et usignert heltall. De n definerer lengden på tallet. |
FLOAT (N, D) | Det brukes til å lagre brøknummer i små størrelser. Her, n definerer lengden på hele tallet, og d definerer lengden på tallet etter desimalpunktet. Det krever 2 byte for å lagre dataene, og 24 sifre kan legges til etter desimalpunktet. Standardverdien på n er 10 og er 2. |
Dobbelt (N, D) | Det brukes til å lagre store brøknummer. Her, n definerer lengden på hele tallet, og d definerer lengden på tallet etter desimalpunktet. Det krever 8 byte for å lagre dataene, og 53 sifre kan legges til etter desimalpunktet. Standardverdien på n er 16 og er 4. |
Desimal (n, d) | Det brukes til å definere et brøkdeltall med fast punkt som kan lagre et stort brøkantall enn float og dobbelt. Her, den maksimale verdien av n kan være 65, og den maksimale verdien av d kan være 30. |
Binær stor objektdatatype (BLOB):
Denne datatypen brukes til å lagre den variable mengden binære data. Fire forskjellige typer BLOB -datatyper er beskrevet nedenfor.
Blob -datatype | Beskrivelse |
Tinyblob | Det kan brukes til å lagre data om maksimalt 255 byte. |
Blob (n) | Det kan brukes til å lagre data om maksimalt 65 535 byte. |
Mediumblob | Det kan brukes til å lagre data om maksimalt 16 777 215 byte. |
Longblob | Det kan brukes til å lagre data om maksimalt 4 GB eller 4 294 967 295 byte. |
Dato og tidsdatatype:
Denne datatypen brukes til å lagre dato- og tidsrelaterte verdier. Feltet for dato og klokkeslett for datatype kan lagre dato, tid, datetime, år og tidsstempelverdier. Hvis det er gitt ugyldige data for feltverdien på dato og tid, vil nullverdien bli satt inn. Ulike datatyper av datatyper av datoer og klokkeslett har beskrevet nedenfor.
Dato og tid datatype | Beskrivelse |
DATO | Den brukes til å vise datoen i formatet, 'yyyy-mm-dd.' Det kan lagre verdier fra '1000-01-01' til '9999-12-31'. |
TID | Den brukes til å vise tiden i formatet, 'HH-MM-SS.' Det kan lagre verdier fra '-838: 59: 59' til '838: 59: 59'. |
DATO TID | Den brukes til å vise tiden i formatet, 'yyyy-mm-dd hh-mm-ss'. Det kan lagre verdier fra '1000-01-01 00:00:00' til '9999-12-31 23:59:59'. |
År [(2 | 4)] | Den lagrer 2 eller 4 sifre års verdi. 2 -sifre -årverdien støttes ikke fra MySQL versjon 8.0. |
Tidsstempel (m) | Det brukes til å vise tiden i formatet, 'yyyy-mm-dd hh-mm-ss'. Det kan lagre verdier fra '1970-01-01 00:00:01' UTC til '2038-01-19 03:14:07' UTC. |
Romlig datatype:
Denne typen datatype lagrer geografiske og geometriske data. Ulike romlige datatyper er beskrevet nedenfor.
Romlig datatype | Beskrivelse |
PUNKT | Det brukes til å lagre verdiene til x- og y -koordinatene til et punkt. |
Multipunkt | Det brukes til å lagre en samling av flere punkter. |
Polygon | Det brukes til å representere multisidert geometri. 0 eller flere innvendige grenser og en utvendig grense kan defineres av polygon -datatype. |
Multiplygon | Det brukes til å lagre en samling av flere polygonelementer. |
Linestring | Det brukes til å representere en kurve med en eller flere poengverdier. |
Multilinestring | Det representerer multikurvegeometri som inneholder en samling av linestringverdier. |
Geometri | Det brukes til å lagre et punkt eller en aggregat av punkter av romlige verdier av enhver type. |
GeometryCollection | Det brukes til å lagre en samling av 0 eller flere geometriverdier. |
JSON -datatype:
Datatypen brukes til å lagre og få tilgang til JSON -dokumenter enkelt. Denne datatypen brukes til å validere JSON -data og gi optimal lagringsplass automatisk. Når det er gitt ugyldige data for JSON -feltet, vil de gi en feil.
Forutsetninger:
Du må opprette en databasetabell med dataene i en MySQL -database for å sjekke bruken av MySQL -datatyper. Åpne terminalen og koble til MySQL -serveren ved å utføre følgende kommando.
$ sudo mysql -u root
Kjør følgende kommando for å opprette en database som heter test_db.
Opprette databasetest_db;Kjør følgende kommando for å velge databasen.
Bruk test_db;Bruk av MySQL -datatyper:
I denne delen av opplæringen har flere eksempler vist noen bruk av MySQL -datatyper for å lage databasetabeller.
Eksempel-1: Bruk av streng og numerisk datatype
Følgende spørsmål vil lage en tabell med fem felt. Datatypen til Produkt ID Feltet er int, og den primære nøkkelen vil bli automatisk inkrementert. Datatypen til Navn Feltet er varchar. Datatypen til vekt Feltet er Smallint. Datatypen til enhet Feltet er enum. Datatypen til pris Feltet er desimal. Kjør følgende spørsmål for å opprette Produkter bord.
Lag bordprodukter (Kjør følgende kommando for å sjekke strukturen til Produkter bord.
Beskrive produkter;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Kjør følgende spørsmål for å lese innholdet i Produkter bord.
Sett inn 'Products' ('Product_id', 'Name', 'Weight', 'Unit', 'Price') Verdier (Null, 'Cake', '500', 'Pound', '199.99 ');Kjør følgende kommando for å lese innholdet i Produkter bord.
Velg * fra produkter;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Eksempel-2: Bruk av datatype for dato og tid
Følgende spørring oppretter en tabell med fire felt. Datatypen på Produkt ID Feltet er liten og primær nøkkel. Datatypen til Produksjonsdato Feltet er datetime. Datatypen til utgått på dato Feltet er datetime. Datatypen til Påmeldingsfrist Feltet er tidsstempel. Kjør følgende spørsmål for å opprette PRODUKT_VALITET bord.
Lag tabellprodukt_validitet (Kjør følgende kommando for å sjekke strukturen til PRODUKT_VALITET bord.
Beskrive produkt_validitet;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Kjør følgende spørsmål for å lese innholdet i PRODUKT_VALITET bord.
Sett inn 'Product_Validity' ('Product_id', 'Manufacturing_date', 'expired_date', 'entry_date') verdier ('1234', '2022-01-03 17:01:35.000000 ',' 2022-01-31 22:01:35 ', current_timestamp ());Kjør følgende kommando for å lese innholdet i PRODUKT_VALITET bord.
Velg * fra produkt_Validitet;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Eksempel-3: Bruk av romlig datatype
Følgende spørring oppretter en tabell med tre felt. Datatypen på id Feltet er Smallint. Datatypen til beskrivelse Feltet er tekst. Datatypen til geo Feltet er geometri. Kjør følgende spørsmål for å opprette geo_table bord.
Lag tabell Geo_Table (ID SmallInt (3), Beskrivelse Tekst, Geo Geometry);Kjør følgende kommando for å sjekke strukturen til geo_table bord.
Beskrive geo_table;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Kjør følgende spørsmål for å sette inn en post i geo_table bord.
Sett inn i geo_table verdier (123, "Testdata", ST_PointFromText (@G));Kjør følgende spørsmål for å lese innholdet i geo_table bord.
Velg * fra geo_table;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Eksempel-4: Bruk av JSON-datatype
Følgende spørsmål vil opprette en tabell med JSON -data. Datatypen til jdata Feltet er JSON. Kjør følgende spørsmål for å opprette JSontable bord.
Lag tabell JSontable (JData JSON);Kjør følgende kommando for å sjekke strukturen til JSontable bord.
Beskrive JSontable;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Kjør følgende spørsmål for å sette inn JSON -dataene.
Sett inn i jsontable verdier ('"id": 1209, "navn": "mir sabbir"');Kjør følgende spørsmål for å lese postene fra JSontable bord.
Velg JData fra JSontable;Produksjon:
Følgende utgang vises etter å ha utført kommandoen ovenfor.
Konklusjon:
De mest brukte MySQL -datatypene er blitt forklart i denne opplæringen ved å lage flere tabeller for å fjerne MySQL -datatyper -konseptet for de nye MySQL -brukerne.