Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 16040|Răspunde: 0

[Sursă] Intervalul de valori al BigInt, Int, MediumInt, SmallInt și Tinyint în MySQL

[Copiază linkul]
Postat la 2020-5-17 21:45:54 | | |
Designul bazei de date MySQL, printre care pentru optimizarea performanței datelor, considerarea tipurilor de câmp este foarte importantă, colectarea unor informații, sortate și partajate, acest articol este despre introducerea sintaxei Mysql integer bigint, int, mediumint, smallint și tinyint, după cum urmează:
1、bigint

De la -2^63 (-9223372036854775808) la 2^63-1 (9223372036854775807) date întregi (toate numerele), intervalul fără semn este de la 0 la

18446744073709551615。 Un bit are 8 octeți.

2、int

Un întreg de dimensiune normală. Intervalul semnat este de la -2^31 (-2.147.483.648) până la 2^31 - 1 (2.147.483.647) date întregi (toate numerele), iar intervalul fără semn este de la 0 la 4294967295. Un bit are 4 octeți.
Sinonimul SQL-92 pentru int este întreg.

3、Mediumint

Un număr întreg de mărime medie cu un interval semnat de la -8388608 la 8388607 și un interval fără semn de la 0 la 16777215. Un bit are 3 octeți.

4、smallint

Un număr întreg mic. Intervalul semnat este de la -2^15 (-32.768) până la 2^15 - 1 (32.767) date întregi, iar intervalul nesemnat este de la 0 la 65535. Un bit are o dimensiune de 2 octeți. MySQL oferă mai mult decât suficiente funcționalități, iar pentru că MySQL este software open source, poate reduce semnificativ costul total de proprietate.

5、tinyint

Intervalul semnat este -128 - 127, iar intervalul nesemnat este format din date întregi de la 0 la 255. Un bit are 1 octet în dimensiune.

Rețineți că toate operațiile aritmetice se fac cu valori semnate BIGINT sau DOUBLE, așa că nu ar trebui să folosiți numere întregi mari semnate mai mari de 9223372036854775807 (63 de biți), cu excepția funcțiilor de biți! Rețineți că atunci când cei doi parametri sunt valori ÎNTREGI,-、 + și * vor folosi operația BIGINT! Aceasta înseamnă că dacă înmulțești cu 2 numere întregi mari (sau dintr-o funcție care returnează un întreg), poți obține rezultate neașteptate dacă rezultatul este mai mare decât 9223372036854775807. Un număr în virgulă mobilă nu poate fi nesemnat, pentru un număr în virgulă mobilă cu precizie simplă, precizia sa poate fi <=24, pentru un număr în virgulă mobilă cu dublă precizie, este între 25 și 53, aceste tipuri precum FLOAT și DOUBLE sunt descrise mai jos. FLOAT(X) are același interval ca FLOAT și DOUBLE, dar dimensiunea afișajului și numărul de zecimale sunt nedefinite. În MySQL 3.23, aceasta este o valoare adevărată în virgulă mobilă. În versiunile anterioare ale MySQL, FLOAT(precizie) avea întotdeauna două zecimale. Această sintaxă este oferită pentru compatibilitate ODBC.



Intervalul de valori al fiecărui tip de date în MySQL

TINYINT
-128 - 127
TINYINT NESEMNAT
0 - 255
SMALLINT
-32768 - 32767
SMALLINT NESEMNAT
0 - 65535
MEDIUMINT
-8388608 - 8388607
MEDIUMINT NESEMNAT
0 - 16777215
INT sau ÎNTREG
-2147483648 - 2147483647
INT NESEMNAT sau NESEMNAT ÎNTREG
0 - 4294967295
BIGINT
-9223372036854775808 - 9223372036854775807
BIGINT NESEMNAT
0 - 18446744073709551615
FLOAT
-3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38
DUBLĂ sau DUBLĂ PRECIZIE sau REAL
-1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308
ZECIMAL[(M,[D])] sau NUMERIC(M,D)
Determinat de M (lungimea întregului număr, inclusiv punctul zecimal, numărul de cifre din stânga punctului zecimal, numărul de cifre din dreapta punctului zecimal, dar nu semnul negativ) și D (numărul de cifre din dreapta punctului zecimal), M este implicit 10, iar D implicit 0
DATĂ
1000-01-01 - 9999-12-31
DATA-ORĂ
1000-01-01 00:00:00 - 9999-12-31 23:59:59
MARCAJ TEMPORAL
1970-01-01 00:00:00 - O zi în 2037 (nu știu exact ce zi, hehe)
ORĂ
-838:59:59' la 838:59:59
AN[(2|4)]
Implicit este formatul pe 4 biți, formatul pe 4 biți este 1901 - 2155.0000, iar formatul pe 2 biți este 70-69 (1970-2069)
CHAR(M) [BINAR] sau NCHAR(M) [BINAR]
M variază de la 1 la 255, iar dacă nu există un element BINAR, este sensibil la majuscule, iar NCHAR înseamnă folosirea setului implicit de caractere. Completează cu spații în baza de date, dar spațiile de la final vor fi eliminate automat când le scoți.
[NAȚIONAL] VARCHAR(M) [BINAR]
M variază de la 1 la 255. Spațiile de la capătul bazei de date vor fi eliminate automat.
TINYBLOB sau TINYTEXT
255 (2^8-1) caractere
BLOB sau TEXT
65535 (2^16-1) caractere
MEDIUMBLOB sau MEDIUMTEXT
16777215 (2^24-1) caractere
LONGBLOB sau TEXT LUNG
4294967295 (2^32-1) personaje
ENUM('value1','value2',...)
Pot exista în total 65.535 de valori diferite
SET('value1','value2',...)
Există până la 64 de membri




Precedent:Întreruperea liniei PHP PHP_EOL
Următor:Comanda Linux update yum update
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com