Návrh databázy MySQL, medzi nimi, pre optimalizáciu výkonu dát, je veľmi dôležité zohľadniť typ poľa, zhromaždil som niektoré informácie, usporiadal a zdieľal, tento článok sa zaoberá syntaxickým úvodom mysql celočíselných bigint, int, mediumint, smallint a tinyint, nasledovne:
1、bigint
Od -2^63 (-9223372036854775808) po 2^63-1 (9223372036854775807) celočíselných dát (všetky čísla) je rozsah bez znamienka od 0 do
18446744073709551615。 Jeden bit má 8 bajtov.
2、int
Normálne veľké celé číslo. Podpísaný rozsah je -2^31 (-2 147 483 648) do 2^31 - 1 (2 147 483 647) celočíselných dát (všetky čísla) a rozsah bez znamienka je od 0 do 4294967295. Bit má veľkosť 4 bajty. Synonymum pre int v SQL-92 je celočíselné.
3、mediumint
Stredne veľké celé číslo so znamienkovým rozsahom od -8388608 do 8388607 a neznamienkovým rozsahom od 0 do 16777215. Bit má veľkosť 3 bajty.
4、smallint
Malé celé číslo. Podpísaný rozsah je -2^15 (-32 768) až 2^15 - 1 (32 767) celočíselných dát a rozsah bez znamienka je od 0 do 65535. Bit má veľkosť 2 bajty. MySQL ponúka viac než dostatok funkcií a keďže MySQL je open source softvér, môže výrazne znížiť celkové náklady na vlastníctvo.
5、tinyint
Znamienkový rozsah je -128 - 127 a neznamienkový rozsah sú celočíselné dáta od 0 do 255. Bit má veľkosť 1 bajt.
Všimnite si, že všetky aritmetické operácie sa vykonávajú so znamienkovanými hodnotami BIGINT alebo DUTL, takže by ste nemali používať podpísané veľké celé čísla väčšie ako 9223372036854775807 (63 bitov), okrem bitových funkcií! Všimnite si, že keď sú oba parametre celé čísla,-、 + a * použijú operáciu BIGINT! To znamená, že ak vynásobíte dvoma veľkými celými číslami (alebo z funkcie, ktorá vráti celé číslo), môžete získať neočakávané výsledky, ak je výsledok väčší ako 9223372036854775807. Číslo s pohyblivou desatinnou čiarkou sa nedá odznačiť, pre jednorazové presné číslo s pohyblivou desatinnou čiarkou môže byť jeho presnosť <=24, pre dvojnásobne presné číslo s pohyblivou desatinnou čiarkou je medzi 25 a 53, tieto typy ako FLOAT a DOUBLE sú popísané nižšie. FLOAT(X) má rovnaký rozsah ako FLOAT a DOUBLE, ale veľkosť displeja a počet desatinných miest nie sú definované. V MySQL 3.23 je to skutočná hodnota s pohyblivou desatinnou čiarkou. V skorších verziách MySQL mal FLOAT(precision) vždy 2 desatinné miesta. Táto syntax je určená pre kompatibilitu s ODBC.
Rozsah hodnôt každého dátového typu v MySQL
TINYINT -128 - 127 TINYINT NEPODPÍSANÝ 0 - 255 SMALLINT -32768 - 32767 SMALLINT NEPODPÍSANÝ 0 - 65535 MEDIUMINT -8388608 - 8388607 MEDIUMINT NEPODPÍSANÝ 0 - 16777215 INT alebo CELÉ ČÍSLO -2147483648 - 2147483647 INT NESIGNED alebo INTEGER NESIGNED 0 - 4294967295 BIGINT -9223372036854775808 - 9223372036854775807 BIGINT NEPODPÍSANÝ 0 - 18446744073709551615 FLOAT -3.402823466E+38 - -1.175494351E-38,0,175494351E-38 - 3.402823466E+38 DOUBLE alebo DOUBLE PRECISION alebo REAL -1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308 DESATINNÉ[(M,[D])] alebo NUMERICKÉ(M,D) Určené podľa M (dĺžka celého čísla vrátane desatinnej čiarky, počet číslic vľavo od desatinnej čiarky, počet číslic napravo od desatinnej čiarky, ale nie záporné znamienko) a D (počet číslic napravo od desatinnej čiarky), M je predvolene 10 a D 0 DÁTUM 1000-01-01 - 9999-12-31 DÁTUM 1000-01-01 00:00:00 - 9999-12-31 23:59:59 ČASOVÁ ZNAČKA 1970-01-01 00:00:00 - Jeden deň v roku 2037 (presne neviem ktorý, hehe) ČAS -838:59:59' na 838:59:59 ROK[(2|4)] Predvolený formát je 4-bitový formát, 4-bitový formát je 1901 - 2155 0000 a 2-bitový formát je 70-69 (1970-2069) CHAR(M) [BINÁRNY] alebo NCHAR(M) [BINÁRNY] M sa pohybuje od 1 do 255, a ak neexistuje BINÁRNA položka, je to citlivé na veľkosť písmen, a NCHAR znamená použitie predvolenej znakovej sady. Vyplňte medzery v databáze, ale medzery na konci sa automaticky odstránia, keď ich odstránite. [NÁRODNÉ] VARCHAR(M) [BINÁRNY] M sa pohybuje od 1 do 255. Medzery na konci databázy budú automaticky odstránené. TINYBLOB alebo TINYTEXT 255 (2^8-1) postáv BLOB alebo TEXT 65535 (2^16-1) postáv MEDIUMBLOB alebo MEDIUMTEXT 16777215 (2^24-1) postavy LONGBLOB alebo LONGTEXT Postavy 4294967295 (2^32-1) ENUM('hodnota1','hodnota2',...) Môže existovať celkovo 65 535 rôznych hodnôt SET('value1','value2',...) Má až 64 členov
|