Kokius duomenų tipus palaiko MySQL? Išsamus duomenų tipų paaiškinimas MySQL

Kokius duomenų tipus palaiko MySQL ? Išsamus MySQL duomenų tipų paaiškinimas.

MySQL duomenų tipai

„MySQL“ apibrėžtų duomenų laukų tipai yra labai svarbūs jūsų duomenų bazės optimizavimui.

MySQL palaiko kelis tipus, kuriuos galima grubiai suskirstyti į tris kategorijas: skaitinius, datos / laiko ir eilučių (simbolių) tipus.


Skaitmeninis tipas

MySQL duomenų bazės palaiko visus standartinius SQL skaitinių duomenų tipus.

Šie tipai apima griežtus skaitinių duomenų tipus (INTEGER, SMALLINT, DECIMAL ir NUMERIC) ir apytikslius skaitmeninių duomenų tipus (FLOAT, REAL ir DOUBLE PRECISION).

Raktinis žodis INT yra INTEGER sinonimas, o raktinis žodis DEC yra DECIMAL sinonimas.

BIT duomenų tipas saugo bitų laukų reikšmes ir palaiko MyISAM, MEMORY, InnoDB ir BDB lenteles.

Kaip SQL standarto plėtinys, MySQL taip pat palaiko sveikųjų skaičių tipus TINYINT, MEDIUMINT ir BIGINT. Šioje lentelėje parodyta saugykla ir diapazonas, reikalingas kiekvienam sveikųjų skaičių tipui.

类型dydisDiapazonas (pasirašytas)Diapazonas (nepasirašytas)用途
TINYINT1 baitas(-128 127)(0 255)mažas sveikasis skaičius
SMALLINTAS2 baitas(-32 768, 32 767)(0 65)didelis sveikasis skaičius
VIDUTINIS3 baitas(-8 388 608, 8 388 607)(0 16 777)didelis sveikasis skaičius
INT arba INTEGER4 baitas(-2 147 483 648, 2 147 483 647)(0 4 294 967)didelis sveikasis skaičius
BIGINT8 baitas(-9 233 372 036 854 775 808, 9 223 372 036 854 775 807)(0 18 446 744 073 709 551)labai didelė sveikojo skaičiaus reikšmė
Plaustas4 baitas(-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 38 E-3.402, 823 466 38 XNUMX E+XNUMX)vienetinis tikslumas
Slankaus kablelio vertė
DVIGUBAS8 baitas(-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 308 E-1.797, 693 134 862 315 7 308 XNUMX E+XNUMX)dvigubas tikslumas
Slankaus kablelio vertė
DEKIMALISDECIMAL(M,D), jei M>D, tai yra M+2, kitaip D+2Priklauso nuo M ir D reikšmiųPriklauso nuo M ir D reikšmiųdešimtainė reikšmė

Datos ir laiko tipai

Datos ir laiko tipai, nurodantys laiko reikšmes, yra DATETIME, DATE, TIMESTAMP, TIME ir YEAR.

Kiekvienas laiko tipas turi galiojančių reikšmių diapazoną ir „nulinę“ reikšmę, kuri naudojama nurodant neteisėtą reikšmę, kurios MySQL negali atstovauti.

TIMESTAMP tipas turi patentuotas automatinio atnaujinimo funkcijas, kurios bus aprašytos vėliau.

类型dydis
(baitas)
apimtisformatas用途
INFORMACIJA31000-01-01/9999-12-31MMMM-MM-DDdatos vertė
LAIKAS3‘-838:59:59'/'838:59:59'HH: MM: SSlaiko reikšmę arba trukmę
METAI11901/2155MMMMmetų vertė
data ir laikas81000-01-01 00:00:00/9999-12-31 23:59:59MMMM-MM-DD HH: MM: SSSumaišykite datos ir laiko vertes
TIMESTAMP41970-01-01 00:00:00/2037 年某时YYYYMMDDHHMMSSMišrios datos ir laiko reikšmės, laiko žymos

stygos tipas

Eilučių tipai reiškia CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM ir SET. Šiame skyriuje aprašoma, kaip šie tipai veikia ir kaip juos naudoti užklausose.

类型dydis用途
CHARAS0–255 baitaiFiksuoto ilgio virvelė
VARCHARAS0-65535 baitaikintamo ilgio eilutė
TINYBLOB0–255 baitaiDvejetainė eilutė, kurią sudaro ne daugiau kaip 255 simboliai
TINYTEXT0–255 baitaitrumpa teksto eilutė
BLOBAS0–65 535 baitaiIlgi tekstiniai duomenys dvejetaine forma
TEKSTAS0–65 535 baitaiilgi tekstiniai duomenys
VIDUTINIS BLOBAS0-16 777 215 baitųVidutinio ilgio tekstiniai duomenys dvejetaine forma
VIDUTINIS TEKSTAS0-16 777 215 baitųVidutinio ilgio tekstiniai duomenys
LONGBLOB0-4 294 967 295 baitaiLabai dideli tekstiniai duomenys dvejetaine forma
LONGTEKSTAS0-4 294 967 295 baitaiLabai dideli tekstiniai duomenys

CHAR ir VARCHAR tipai yra panašūs, tačiau jie išsaugomi ir gaunami skirtingai. Jie taip pat skiriasi didžiausiu ilgiu ir tuo, ar išsaugomi galinių tarpai. Dėžutės konvertavimas neatliekamas saugojimo ar gavimo metu.

BINARY ir VARBINARY klasės yra panašios į CHAR ir VARCHAR, išskyrus tai, kad jose yra dvejetainės eilutės, o ne dvejetainės eilutės. Tai reiškia, kad juose yra baitų, o ne simbolių eilučių. Tai reiškia, kad jie neturi simbolių rinkinio, o rūšiavimas ir palyginimas grindžiami stulpelio vertės baitų skaitine verte.

BLOB yra dvejetainis didelis objektas, kuriame galima laikyti kintamą duomenų kiekį. Yra 4 BLOB tipai: TINYBLOB, BLOB, MEDIUMBLOB ir LONGBLOB. Jie skiriasi tik maksimaliu ilgiu, kurį jie gali turėti.

Yra 4 TEKSTO tipai: TINYTEXT, TEXT, MEDIUMTEXT ir LONGTEXT. Tai atitinka 4 BLOB tipus, kurių maksimalus ilgis ir saugojimo reikalavimai yra vienodi.

发表 评论

您的邮箱地址不会被公开.必填项已用*标注

Pereikite į viršų