MySQL-tietokannan suunnittelu, muun muassa datan suorituskyvyn optimointiin, kenttätyyppien huomioiminen on erittäin tärkeää, kerätty tietoa, lajiteltu ja jaettu, tämä artikkeli käsittelee mysql-kokonaislukujen bigint, int, mediumint, smallint ja tinyint syntaksin käyttöönottoa seuraavasti:
1、bigint
-2^63:sta (-9223372036854775808) 2^63-1:een (9223372036854775807) kokonaislukudataan (kaikki numerot) merkitsemätön väli on 0:sta
18446744073709551615。 Yksi bitti on 8 tavua.
2、int
Normaalikokoinen kokonaisluku. Allekirjoitettu vaihteluväli on -2^31 (-2,147,483,648) – 2^31 - 1 (2,147,483,647) kokonaislukudataa (kaikki numerot), ja allekirjoittamaton alue on 0–4294967295. Bitti on 4 tavun kokoinen. SQL-92:n synonyymi int:lle on kokonaisluku.
3、mediumint
Keskikokoinen kokonaisluku, jonka allekirjoitettu alue on -8388608–8388607 ja allekirjoittamaton alue 0–16777215. Bitti on 3 tavun kokoinen.
4、smallint
Pieni kokonaisluku. Allekirjoitettu väli on -2^15 (-32 768) – 2^15 - 1 (32 767) kokonaislukudata, ja allekirjoittamaton alue on 0–65535. Bitti on 2 tavun kokoinen. MySQL tarjoaa enemmän kuin tarpeeksi ominaisuuksia, ja koska MySQL on avoimen lähdekoodin ohjelmistoa, se voi merkittävästi pienentää omistamisen kokonaiskustannuksia.
5、tinyint
Allekirjoitettu alue on -128 - 127, ja allekirjoittamaton alue on kokonaislukudata 0:sta 255:een. Bitti on yhden tavun kokoinen.
Huomaa, että kaikki aritmeettiset operaatiot tehdään allekirjoitetuilla BIGINT- tai DOUBLE-arvoilla, joten alle 9223372036854775807 (63 bittiä) suuria allekirjoitettuja kokonaislukuja ei tulisi käyttää, paitsi bittifunktioissa! Huomaa, että kun kaksi parametria ovat KOKONAISLUKU-arvoja,-、 + ja * käyttävät BIGINT-operaatiota! Tämä tarkoittaa, että jos kerrot kahdella suurella kokonaisluvulla (tai funktiolla, joka palauttaa kokonaisluvun), saat odottamattomia tuloksia, jos tulos on suurempi kuin 9223372036854775807. Liukulukulukua ei voi unsignoida; yksittäisen tarkkuuden liukulukuluvulla tarkkuus voi olla <=24, kaksitarkkuuden liukulukuluvulla se on välillä 25–53, ja nämä tyypit kuten FLOAT ja DOUBLE kuvataan alla. FLOAT(X):llä on sama alue kuin FLOAT ja DOUBLE, mutta näytön koko ja desimaalien määrä ovat määrittelemättömiä. MySQL 3.23:ssa tämä on todellinen liukulukuarvo. Varhaisemmissa MySQL-versioissa FLOAT(precision) oli aina kahdella desimaalipaikalla. Tämä syntaksi on tarkoitettu ODBC-yhteensopivuutta varten.
Kunkin tietotyypin arvoalue MySQL:ssä
TINYINT -128 - 127 TINYINT ALLEKIRJOITTAMATON 0 - 255 SMALLINT -32768 - 32767 SMALLINT ALLEKIRJOITTAMATON 0 - 65535 MEDIUMINT -8388608 - 8388607 MEDIUMINT ALLEKIRJOITTAMATON 0 - 16777215 INT tai KOKONAISLUKU -2147483648 - 2147483647 INT ALLEKIRJOITTAMATON TAI KOKONAISLUKU ALLEKIRJOITTAMATON 0 - 4294967295 BIGINT -9223372036854775808 - 9223372036854775807 BIGINT ALLEKIRJOITTAMATON 0 - 18446744073709551615 KELLU -3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3,402823466E+38 KAKSOIS- TAI KAKSINKERTAINEN TARKKUUS TAI REAALI -1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308 DESIMAALI[(M,[D])] tai NUMEERINEN(M,D) M:n (koko luvun pituus, mukaan lukien desimaalipiste, desimaalipisteen vasemmalla olevien numeroiden määrä, desimaalin oikealla puolella olevien numeroiden määrä, mutta ei negatiivisen merkin mukaan) ja D:llä (desimaalipisteen oikealla puolella olevien numeroiden määrä), M oletuksena on 10 ja D oletuksena 0 PÄIVÄMÄÄRÄ 1000-01-01 - 9999-12-31 PÄIVÄMÄÄRÄAIKA 1000-01-01 00:00:00 - 9999-12-31 23:59:59 AIKALEIMA 1970-01-01 00:00:00 - Yksi päivä vuonna 2037 (en tiedä tarkalleen mikä päivä, hehe) AIKA -838:59:59' - 838:59:59 VUOSI[(2|4)] Oletuksena on 4-bittinen muoto, 4-bittinen muoto on 1901 - 2155 0000 ja 2-bittinen muoto 70-69 (1970-2069) CHAR(M) [BINÄÄRINEN] tai NCHAR(M) [BINÄÄRINEN] M on välillä 1–255, ja jos binäärialkiota ei ole, se on kirjainkoon herkkä, ja NCHAR tarkoittaa oletusmerkistön käyttöä. Täytä tietokannan välilliköitä, mutta lopussa olevat välit poistetaan automaattisesti, kun poistat ne. [KANSALLINEN] VARCHAR(M) [BINÄÄRI] M vaihtelee 1:stä 255:een. Tietokannan lopun välilyönnit poistetaan automaattisesti. TINYBLOB tai TINYTEXT 255 (2^8-1) merkkiä BLOB vai TEKSTI 65535 (2^16-1) merkkiä MEDIUMBLOB tai MEDIUMTEXT 16777215 (2^24-1) hahmot LONGBLOB tai LONGTEXT 4294967295 (2^32-1) merkkiä ENUM('value1', 'value2',...) Arvoja voi olla yhteensä 65 535 erilaista SET('value1', 'value2',...) Jäseniä on jopa 64
|