2013-02-04 43 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。

相关问题