不知何故GROUP_CONCAT能够圆了六个"网页"的一篇文章(每个储存作为文本),并把他们纳入一个单一的MEDIUMTEXT不会丢失任何数据,但也有一些一页 文章,时间超过正常(但还是明显地适合文本内的数据的类型),失去了大量的数据。任何人都知道这是怎么了?

原来的查询:

SET group_concat_max_len = 16000000;
UPDATE Threads t SET t.Content = (SELECT GROUP_CONCAT(a.Content ORDER
BY a.PageID SEPARATOR '<!-- pagebreak -->') FROM MSarticlepages a
WHERE a.ArticleID = t.MSthreadID GROUP BY a.ArticleID);

再次谢谢你抽出时间来指导我无知的,自我!

有帮助吗?

解决方案

该参考手册MySQL5.0(http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat)国家:

开始与MySQL5.0.19的类型 返回的GROUP_CONCAT()总是 VARCHAR除非group_concat_max_len是 大于512,在这种情况下, 返回BLOB。(此前,它 返回的一个BLOB group_concat_max_len大于512 只有如果查询结果包含一个通过了 条款。)

根据这数据,返回的类型将是斑点,不MEDIUMTEXT.Wwould它是可能的,在联总是超过2^16(65536字节),这是限制BLOB?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top