Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 16040|Risposta: 0

[Fonte] L'intervallo di valori di BigInt, Int, MediumInt, SmallInt e Tinyint in MySQL

[Copiato link]
Pubblicato il 17-05-2020 21:45:54 | | |
La progettazione di database MySQL, tra cui, per l'ottimizzazione delle prestazioni dei dati, la considerazione dei tipi di campo è molto importante, raccolta di alcune informazioni, ordinata e condivisa; questo articolo riguarda l'introduzione della sintassi di mysql integer bigint, int, mediumint, smallint e tinyint, come segue:
1、bigint

Da -2^63 (-9223372036854775808) a 2^63-1 (9223372036854775807) dati interi (tutti numeri), l'intervallo senza segni va da 0 a

18446744073709551615。 Un bit è di 8 byte.

2、int

Un intero di dimensione normale. L'intervallo di segni è da -2^31 (-2.147.483.648) a 2^31 - 1 (2.147.483.647) dati interi (tutti numeri), e l'intervallo senza segni è da 0 a 4294967295. Un bit è grande 4 byte.
Il sinonimo SQL-92 per int è intero.

3、Medium Int

Un intero di medie dimensioni con un intervallo con segno da -8388608 a 8388607 e un intervallo senza segno da 0 a 16777215. Un bit è di 3 byte.

4、smallint

Un intero piccolo. L'intervallo con segno è da -2^15 (-32.768) a 2^15 - 1 (32.767) dati interi, e l'intervallo senza segno è da 0 a 65535. Un bit è di 2 byte. MySQL offre funzionalità più che sufficienti e, poiché MySQL è software open source, può ridurre significativamente il costo totale di proprietà.

5、tinyint

L'intervallo di segni è -128 - 127, e l'intervallo non segnato è costituito da dati interi da 0 a 255. Un bit è grande 1 byte.

Nota che tutte le operazioni aritmetiche vengono eseguite con valori BIGINT o DOPPI firmati, quindi non dovresti usare numeri interi grandi con segnato maggiori di 9223372036854775807 (63 bit), tranne che per funzioni di bit! Nota che quando i due parametri sono valori INTERI,-、 + e * useranno l'operazione BIGINT! Questo significa che se moltiplichi per 2 numeri interi grandi (o da una funzione che restituisce un intero), puoi ottenere risultati inaspettati se il risultato è maggiore di 9223372036854775807. Un numero in virgola mobile non può essere non segnato; per un numero in virgola mobile a precisione singola, la sua precisione può essere <=24, per un numero in virgola mobile a doppia precisione è compreso tra 25 e 53; questi tipi come FLOAT e DOUBLE sono descritti di seguito. FLOAT(X) ha lo stesso intervallo di FLOAT e DOUBLE, ma la dimensione del display e il numero di decimali non sono definiti. In MySQL 3.23, questo è un vero valore in virgola mobile. Nelle versioni precedenti di MySQL, FLOAT(precision) aveva sempre 2 decimali. Questa sintassi è fornita per la compatibilità ODBC.



L'intervallo di valori di ogni tipo di dato in MySQL

TINYINT
-128 - 127
TINYINT SENZA FIRMARE
0 - 255
SMALLINT
-32768 - 32767
SMALLINT NON FIRMATO
0 - 65535
MEDIUMINT
-8388608 - 8388607
MEDIA SENZA SEGNALAZIONE
0 - 16777215
INT o INTERO
-2147483648 - 2147483647
INT UNSIGNED o INTEGER UNSIGNED
0 - 4294967295
BIGINT
-9223372036854775808 - 9223372036854775807
BIGINT NON FIRMATO
0 - 18446744073709551615
CARRO ALLEGICO
-3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38
DOPPIA o DOPPIA PRECISIONE o REALE
-1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308
DECIMALE[(M,[D])] o NUMERICA(M,D)
Determinato da M (la lunghezza dell'intero numero, incluso il punto decimale, il numero di cifre a sinistra del punto decimale, il numero di cifre a destra del punto decimale, ma non il segno negativo) e D (il numero di cifre a destra del punto decimale), M di default è 10 e D di default 0
DATA
1000-01-01 - 9999-12-31
DATA-ORA
1000-01-01 00:00:00 - 9999-12-31 23:59:59
TIMESTAMP
1970-01-01 00:00:00 - Un giorno nel 2037 (Non so esattamente quale giorno, hehe)
ORE
-838:59:59' a 838:59:59
ANNO[(2|4)]
Il formato predefinito è a 4 bit, quello a 4 bit è 1901 - 2155.0000, e il formato a 2 bit è 70-69 (1970-2069)
CHAR(M) [BINARIO] o NCHAR(M) [BINARIO]
M varia da 1 a 255, e se non c'è un elemento BINARIO, è distinto dalla maiuscolo e minuscolo, e NCHAR significa usare il set di caratteri predefinito. Riempi con spazi nel database, ma quelli alla fine verranno automaticamente rimossi quando li rimuovi.
[NAZIONALE] VARCHAR(M) [BINARIO]
M varia da 1 a 255. Gli spazi alla fine del database verranno automaticamente rimossi.
TINYBLOB o TINYTEXT
255 (2^8-1) caratteri
BLOB o TESTO
65535 (2^16-1) caratteri
MEDIUMBLOB o MEDIUMTEXT
16777215 (2^24-1) personaggi
LONGBLOB o TESTO LUNGO
4294967295 (2^32-1) personaggi
ENUM('value1','value2',...)
Possono esserci in totale 65.535 valori diversi
SET('value1','value2',...)
Ci sono fino a 64 membri




Precedente:Interruzione di linea PHP PHP_EOL
Prossimo:Comando Linux update yum update
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com