2013-02-04 40 views
0

在我的一個表中,我有一個可以包含更長文本的字段。每當有人在該表中插入某些東西時,就會調用一個簡單的觸發器。我的問題是,這給了我一個錯誤:#1436 - 線程堆棧溢出:[...]在MySQL中存儲更長的文本

我認爲這可以通過某種文本壓縮來解決。

我應該使用什麼樣的壓縮?我需要能夠「解壓縮」它。請注意,這不是爲了提高安全性,而是爲了儘量減少數據量。

+1

您可能是指壓縮。加密通常不會減少數據量,有時甚至會增加數據量。另外,你可能想看看這個[post](http://stackoverflow.com/questions/8821575/mysql-error-1436-thread-stack-overrun-with-simple-query) – ESG

+0

@TheVedge是,編輯了文字 –

+0

你看過那篇文章嗎?看起來問題可能與配置/編譯有關,而不是行本身的大小 – ESG

回答

0

它看起來像TheVedge鏈接到一個帖子,可能會解決您的MySQL配置問題。但是,如果您仍希望通過在blob列中壓縮文本數據來節省空間(如果您的網絡託管計劃中有過多的數據和/或數據限制過低,則可取),MySQL包含built-in compression/decompression functions。看看COMPRESS()和UNCOMPRESS()。這些基於標準zlib。

相關問題