Warum ist nur 64kB Daten in meiner MySQL-Datenspalte gespeichert werden?
Frage
Ich versuche, eine sehr lange Textzeichenfolge in eine MySQL-Blob Spalte einzufügen, aber MySQL ist nur 64kB der Daten zu speichern. Der String ist 75.360 Zeichen lang sein. Ich bin die Verbindung mit PHP mysql_connect()
.
Irgendwelche Ideen?
Macht es einen Unterschied machen, wenn es Blob oder Text ist. Ich hatte ursprünglich als Text, sondern verändern sich ohne beeinflussen.
Andere Tipps
Ein BLOB
Typ in MySQL kann auf 65.534 Bytes speichern, wenn Sie versuchen, mehr zu speichern, als diese viele Daten MySQL die Daten gestutzt. MEDIUMBLOB
kann zu 16.777.213 Bytes speichern und LONGBLOB
können 4294967292 Bytes speichern.
Wenn Sie den strikten SQL-Modus zu aktivieren ( MySQL Modi ) erhalten Sie eine Fehlermeldung erhalten, wenn Sie versuchen, Daten zu speichern, die in der Spalte Typ passen nicht.
Sie auch gefragt, ob es einen Unterschied zwischen BLOB und TEXT
ist
Blobs ist für binäre Daten. Wenn Sie eine LIKE Abfrage auf einem BLOB-Feld zu tun wird es Fall empfindlich sein.
d.
SELECT 'TEXT' LIKE 'TEXT';
=> 1 for both BLOB and TEXT
SELECT 'TEXT' LIKE 'text';
=> 1 for TEXT
=> 0 for BLOB
Die BLOB-Spalte ist nur 64 KB pro die Dokumentation
Versuchen Sie, eine MEDIUMBLOB Spaltenart statt ...