Qual è la lunghezza massima dei dati che posso inserire in una colonna BLOB in MySQL?


150

Qual è la lunghezza massima dei dati che posso inserire in una colonna BLOB in MySQL?


2 ^ 16 byte, apparentemente . Inoltre: "La dimensione massima di un oggetto BLOB o TEXT è determinata dal suo tipo, ma il valore più grande che puoi effettivamente trasmettere tra il client e il server è determinato dalla quantità di memoria disponibile e dalla dimensione dei buffer di comunicazione."
Zabba,


Incredibilmente, i documenti di Mysql non forniscono direttamente queste informazioni. Il più vicino che ho trovato è la formula "Memoria richiesta" che implica solo la risposta, una volta calcolata: "L + 2 byte, dove L <2 ^ 16"
Dogweather

Risposte:


248

A BLOBpuò avere un massimo di 65535 byte (64 KB).

Se hai bisogno di più, considera di usare:

  • a MEDIUMBLOBper 16777215 byte (16 MB)

  • a LONGBLOBper 4294967295 byte (4 GB).

Vedere Requisiti di archiviazione per i tipi di stringa per ulteriori informazioni.


61
In altre parole, BLOB≈ 64 KB, MEDIUMBLOB≈ 16 MB e LONGBLOB≈ 4 GB
IvanRF

Sto usando BLOB medio, ma accetta solo fino a 1 MB di dati. Perché? C'è un posto dove devo impostare questa dimensione?
SIBHI S

17

Può o non può essere preciso, ma secondo questo sito: http://www.htmlite.com/mysql003.php .

BLOB Una stringa con una lunghezza massima di 65535 caratteri.

Il manuale di MySQL dice:

La dimensione massima di un oggetto BLOB o TEXT è determinata dal suo tipo, ma il valore più grande che puoi effettivamente trasmettere tra il client e il server è determinato dalla quantità di memoria disponibile e dalla dimensione dei buffer di comunicazione

Penso che il primo sito ottenga le loro risposte dall'interpretazione del manuale di MySQL, per http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html


4

Un BLOB può avere un massimo di 65535 byte. Per ulteriori informazioni, utilizzare MEDIUMBLOB per 16777215 byte o LONGBLOB per 4294967295 byte.

Spero che ti possa aiutare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.