Neden benim MySQL veri sütununda kaydedilmiş olan verinin sadece 64 kB'dir?

4 Cevap php

Ben MySQL Blob sütuna çok uzun bir metin dizesi eklemek çalışıyorum, ancak MySQL sadece verilerin 64KB tasarruf edilir. Dize 75360 karakterden uzun. Ben PHP'nin ile bağlıyorum mysql_connect().

Herhangi bir fikir?

Bu Blob veya Metin ise bir fark yoktur. Ben aslında bir metin olarak vardı ama hiçbir etkisi ile değişti.

4 Cevap

O maximum size bir BLOB sütun Çünkü. Sen MEDIUMBLOB / LONGBLOB veya MEDIUMTEXT / LONGTEXT kullanmanız gerekir.

Eğer bu kadar veri MySQL veri kesecek olacak daha fazla saklamak için çalışırsanız bir BLOB MySQL yazın 65.534 bayt kadar saklayabilirsiniz. MEDIUMBLOB 16777213 bayt kadar saklayabilir, ve LONGBLOB 4294967292 bayt kadar saklayabilirsiniz.

Eğer sıkı SQL modunu etkinleştirmek Eğer sütun türü sığmayan veri depolamak çalıştığınızda (MySQL modes) bir hata alırsınız.

You also asked if there is a difference between BLOB and TEXT
BLOBS are for binary data. If you do a LIKE query on a BLOB field it will be case sensitive.

yani

SELECT 'TEXT' LIKE 'TEXT';
=> 1 for both BLOB and TEXT

SELECT 'TEXT' LIKE 'text';
=> 1 for TEXT
=> 0 for BLOB

Blob sütun the documentation başına sadece 64Kb olduğunu

Yerine MEDIUMBLOB sütun türünü deneyin ...