Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 16040|Odpověď: 0

[Zdroj] Rozsah hodnot BigInt, Int, MediumInt, SmallInt a Tinyint v MySQL

[Kopírovat odkaz]
Zveřejněno 17. 5. 2020 21:45:54 | | |
Návrh databáze MySQL pro optimalizaci výkonu dat je velmi důležitý pro zohlednění typu pole, shromáždil jsem některé informace, roztřídil a sdílel, tento článek se zabývá syntaxí zavedení mysql integer bigint, int, mediumint, smallint a tinyint, a to následovně:
1、bigint

Od -2^63 (-9223372036854775808) do 2^63-1 (9223372036854775807) celočíselných dat (všechna čísla) je rozsah bez znaménka od 0 do

18446744073709551615。 Jeden bit má 8 bajtů.

2、int

Normálně velké celé číslo. Podepsaný rozsah je -2^31 (-2 147 483 648) do 2^31 - 1 (2 147 483 647) celočíselných dat (všechna čísla) a rozsah bez znaménka je od 0 do 4294967295. Bit má velikost 4 bajty.
Synonymum pro int v SQL-92 je celočíselné.

3、mediumint

Středně velké celé číslo se znaménkovým rozsahem od -8388608 do 8388607 a neznaménkovým rozsahem od 0 do 16777215. Bit má velikost 3 bajty.

4、smallint

Malé celé číslo. Podepsaný rozsah je od -2^15 (-32 768) do 2^15 - 1 (32 767) celočíselných dat a rozsah bez znaménka je od 0 do 65535. Bit má velikost 2 bajty. MySQL nabízí více než dostatek funkcí a protože je MySQL open source software, může výrazně snížit celkové náklady na vlastnictví.

5、tinyint

Podepsaný rozsah je -128 - 127 a neznaménkový rozsah jsou celočíselná data od 0 do 255. Bit má velikost 1 bajt.

Všimněte si, že všechny aritmetické operace se provádějí se znamepsanými hodnotami BIGINT nebo DOUBLE, takže byste neměli používat podepsaná velká celá čísla větší než 9223372036854775807 (63 bitů), kromě bitových funkcí! Všimněte si, že když jsou oba parametry celočíselné hodnoty,-、 + a * použijí operaci BIGINT! To znamená, že pokud vynásobíte dvěma velkými celými čísly (nebo z funkce, která vrací celé číslo), můžete získat neočekávané výsledky, pokud je výsledek větší než 9223372036854775807. Číslo s plovoucí desetinnou čárkou nelze odznaménkovat; pro jednoprvkové číslo s plovoucí desetinnou čárkou může být jeho přesnost <=24, u dvojnásobně přesné hodnoty je mezi 25 a 53, tyto typy jako FLOAT a DOUBLE jsou popsány níže. FLOAT(X) má stejný rozsah jako FLOAT a DOUBLE, ale velikost displeje a počet desetinných desítek nejsou definovány. V MySQL 3.23 je to skutečná hodnota s plovoucí desetinnou čárkou. V dřívějších verzích MySQL měl FLOAT(precision) vždy dvě desetinná místa. Tato syntax je určena pro kompatibilitu s ODBC.



Rozsah hodnot každého datového typu v MySQL

TINYINT
-128 - 127
TINYINT NEPODEPSANÝ
0 - 255
SMALLINT
-32768 - 32767
SMALLINT NEPODEPSANÝ
0 - 65535
MEDIUMINT
-8388608 - 8388607
MEDIUMINT NEPODEPSANÝ
0 - 16777215
INT nebo CELÉ ČÍSLO
-2147483648 - 2147483647
INT NEPODEPSÁNO nebo INTEGER NEPODEPSANÉ
0 - 4294967295
BIGINT
-9223372036854775808 - 9223372036854775807
BIGINT NEPODEPSANÝ
0 - 18446744073709551615
FLOAT
-3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38
DVOJITÁ nebo DVOJITÁ PŘESNOST nebo REAL
-1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308
DESETINNÉ[(M,[D])] nebo NUMERICKÉ(M,D)
Určeno podle M (délka celého čísla včetně desetinné čárky, počtu číslic nalevo od desetinné čárky, počtu číslic napravo od desetinné čárky, ale ne záporného znaménka) a D (počet číslic napravo od desetinné čárky) M je výchozí 10 a D 0
DATUM
1000-01-01 - 9999-12-31
DATETIME
1000-01-01 00:00:00 - 9999-12-31 23:59:59
ČASOVÉ RAZÍTKO
1970-01-01 00:00:00 - Jeden den v roce 2037 (nevím přesně který, hehe)
ČAS
-838:59:59' na 838:59:59
ROK[(2|4)]
Výchozí je 4bitový formát, 4bitový formát 1901 - 2155 000 a 2bitový formát 70-69 (1970-2069)
CHAR(M) [BINÁRNÍ] nebo NCHAR(M) [BINÁRNÍ]
M se pohybuje od 1 do 255, a pokud není BINÁRNÍ položka, je to citlivé na velká písmena, a NCHAR znamená použití výchozí znakové sady. Doplňte mezery v databázi, ale mezery na konci budou automaticky odstraněny, když je odstraníte.
[NATIONAL] VARCHAR(M) [BINÁRNÍ]
M se pohybuje od 1 do 255. Mezery na konci databáze budou automaticky odstraněny.
DROBNÝ BLOB nebo TINYTEXT
255 (2^8-1) postav
BLOB nebo TEXT
65535 (2^16-1) postav
MEDIUMBLOB nebo MEDIUMTEXT
16777215 (2^24-1) postavy
LONGBLOB nebo LONGTEXT
4294967295 (2^32-1) postavy
ENUM('hodnota1','hodnota2',...)
Celkem může existovat 65 535 různých hodnot
SET('value1','value2',...)
Členů je až 64




Předchozí:PHP zalomení řádku PHP_EOL
Další:Linux update příkaz yum update
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com