Vorrei sapere qual è la dimensione massima per un tipo VARCHAR di MySQL.
Ho letto che la dimensione massima è limitata dalla dimensione della riga che è circa 65k. Ho provato a impostare il campo a varchar(20000)
ma dice che è troppo grande.
Potrei impostarlo a varchar(10000)
. Qual è il massimo esatto a cui posso impostarlo?
Tenete presente che MySQL ha un limite massimo di dimensione delle righe La rappresentazione interna di una tabella MySQL ha un limite massimo di dimensione della riga di 65.535 byte, senza contare i tipi BLOB e TEXT. Le colonne BLOB e TEXT contribuiscono solo da 9 a 12 byte al limite della dimensione della riga perché il loro contenuto è memorizzato separatamente dal resto della riga. Per saperne di più su Limiti al conteggio delle colonne della tabella e alla dimensione della riga
La dimensione massima che una singola colonna può occupare, è diversa prima e dopo MySQL 5.0.3 I valori nelle colonne VARCHAR sono stringhe di lunghezza variabile. La lunghezza può essere specificata come un valore da 0 a 255 prima di MySQL 5.0.3, e da 0 a 65.535 in 5.0.3 e versioni successive. La lunghezza massima effettiva di una VARCHAR in MySQL 5.0.3 e versioni successive è soggetta alla dimensione massima della riga (65.535 byte, che è condivisa tra tutte le colonne) e al set di caratteri utilizzato.
Tuttavia, si noti che il limite è inferiore se si utilizza un set di caratteri multi-byte come utf8 o utf8mb4.
**Utilizzare i tipi TEXT
per superare il limite della dimensione delle righe.
I quattro tipi TEXT sono TINYTEXT, TEXT, MEDIUMTEXT e LONGTEXT. Questi corrispondono ai quattro tipi BLOB e hanno le stesse lunghezze massime e requisiti di memorizzazione.
Più dettagli sui tipi BLOB e TEXT
Ancora di più
Controllate maggiori dettagli su Data Type Storage Requirements che tratta dei requisiti di memorizzazione per tutti i tipi di dati.
puoi anche usare MEDIUMBLOB/LONGBLOB o MEDIUMTEXT/LONGTEXT
Un tipo BLOB in MySQL può memorizzare fino a 65.534 byte, se si cerca di memorizzare più di questi dati MySQL troncherà i dati. MEDIUMBLOB può memorizzare fino a 16.777.213 byte, e LONGBLOB può memorizzare fino a 4.294.967.292 byte.