MySQL andmebaasi disain, nende hulgas, andmete jõudluse optimeerimiseks, valdkonna tüübi arvestamine on väga oluline, kogutud infot, sorteeritud ja jagatud; see artikkel käsitleb MySQL täisarvude bigint, int, mediumint, smallint ja tinyint süntaksi tutvustamist järgmiselt:
1、bigint
Vahemikus -2^63 (-9223372036854775808) kuni 2^63-1 (9223372036854775807) täisarvuline andmestik (kõik numbrid) on märgistamata vahemik 0 kuni
18446744073709551615。 Üks bitt on 8 baiti.
2、int
Tavalise suurusega täisarv. Märgitud vahemik on -2^31 (-2,147,483,648) kuni 2^31 - 1 (2,147,483,647) täisarvuline andmestik (kõik numbrid) ning märgistamata vahemik on 0 kuni 4294967295. Bitt on 4 baiti suurune. SQL-92 sünonüüm int on täisarv.
3、mediumint
Keskmise suurusega täisarv, mille tähistatud vahemik on -8388608 kuni 8388607 ja märgistamata vahemik 0 kuni 16777215. Bitt on 3 baiti suurune.
4、smallint
Väike täisarv. Märgitud vahemik on -2^15 (-32 768) kuni 2^15 - 1 (32 767) täisarvuline ning märgistamata vahemik on 0 kuni 65535. Bitt on 2 baiti suurune. MySQL pakub piisavalt funktsioone ning kuna MySQL on avatud lähtekoodiga tarkvara, võib see oluliselt vähendada omamise kogukulusid.
5、tinyint
Märgitud vahemik on -128 - 127 ning tähistamata vahemik on täisarvulised andmed vahemikus 0 kuni 255. Bitt on 1 bait suurune.
Pane tähele, et kõik aritmeetilised operatsioonid tehakse allkirjastatud BIGINT või DOUBLE väärtustega, seega ei tohiks kasutada allkirjastatud suuri täisarvu, mis on suuremad kui 9223372036854775807 (63 bitti), välja arvatud bittifunktsioonide puhul! Pane tähele, et kui kaks parameetrit on TÄISARVULISED väärtused,-、 kasutavad + ja * BIGINT operatsiooni! See tähendab, et kui korrutada kahe suure täisarvuga (või funktsiooniga, mis tagastab täisarvu), võib saada ootamatuid tulemusi, kui tulemus on suurem kui 9223372036854775807. Ujukomaarvu ei saa allkirjastada, ühe täpsusega ujukomaarvu puhul võib selle täpsus olla <=24, topelttäpsusega ujukomaarvu puhul jääb see vahemikku 25 kuni 53, neid tüüpe nagu FLOAT ja DOUBLE kirjeldatakse allpool. FLOAT(X) on sama vahemik kui FLOAT ja DOUBLE, kuid ekraani suurus ja kümnendkohtade arv on määratlemata. MySQL 3.23-s on see tõeline ujukoma-väärtus. Varasemates MySQL versioonides oli FLOAT(precision) alati kahe kümnendkohaga. See süntaks on ette nähtud ODBC ühilduvuseks.
Iga andmetüübi väärtusvahemik MySQL-is
TINYINT -128 - 127 TINYINT ALLKIRJASTAMATA 0 - 255 SMALLINT -32768 - 32767 VÄIKE ALLKIRJASTAMATA 0 - 65535 MEDIUMINT -8388608 - 8388607 MEDIUMINT ALLKIRJASTAMATA 0 - 16777215 INT või TÄISARV -2147483648 - 2147483647 INT ALLKIRJASTAMATA VÕI TÄISARV ALLKIRJASTAMATA 0 - 4294967295 BIGINT -9223372036854775808 - 9223372036854775807 BIGINT ALLKIRJASTAMATA 0 - 18446744073709551615 FLOAT -3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3,402823466E+38 KAHEKORDNE VÕI KAHEKORDNE TÄPSUS VÕI REAALNE -1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308 KÜMNENDSÜSTEEMI[(m,[d])] või NUMBRILINE(M,D) Määratuna M (kogu arvu pikkus, sh kümnendkoma, kümnendpunktist vasakul olevate numbrite arv, kümnendkomaa paremal olevate numbrite arv, kuid mitte negatiivse märgiga) ja D (kümnendkomaa paremal olevate numbrite arv) järgi määravad M vaikimisi 10 ja D vaikimisi 0 KUUPÄEV 1000-01-01 - 9999-12-31 KUUPÄEV 1000-01-01 00:00:00 - 9999-12-31 23:59:59 AJATEMPEL 1970-01-01 00:00:00 - Üks päev 2037. aastal (ma ei tea täpselt, mis päev, hehe) AEG -838:59:59' kuni 838:59:59 AASTA[(2|4)] Vaikimisi on 4-bitine formaat, 4-bitine formaat on 1901 - 2155 0000 ja 2-bitine 70-69 (1970-2069) CHAR(M) [BINAARNE] või NCHAR(M) [BINAARNE] M jääb vahemikku 1 kuni 255 ning kui BINAAR-elementi pole, on see tähemärkidega tundlik ning NCHAR tähendab vaikimisi märgistiku kasutamist. Täida andmebaasis tühikud, aga lõpus olevad tühikud eemaldatakse automaatselt, kui need eemaldad. [RIIKLIK] VARCHAR(M) [BINAARNE] M jääb vahemikku 1 kuni 255. Andmebaasi lõpus olevad tühikud eemaldatakse automaatselt. TINYBLOB või TINYTEXT 255 (2^8-1) märki BLOB või TEKST 65535 (2^16-1) märki MEDIUMBLOB või MEDIUMTEXT 16777215 (2^24-1) tegelased LONGBLOB või LONGTEXT 4294967295 (2^32-1) tegelased ENUM('value1', 'value2',...) Kokku võib olla 65 535 erinevat väärtust SET('value1','value2',...) Liikmeid on kuni 64
|