2014-09-04 92 views
0

我的一个使用mysql作为数据库的php项目。在此项目中,PHP前端将允许用户修改数据库。它有一列存储用户输入的数据。如何将无限数据存储到mysql中的特定列

早些时候我使用数据类型作为sallint(255)。当数据库开始增长时,自动要求为用户输入的数据提供更多的存储空间,因此我将数据类型更改为TEXT,现在提出了一个要求比TEXT提供的数据存储更多的数据存储的特​​定要点。有没有特定的列可以提供无限数据存储的方法?

回答

0

有两种以上类型可以看到:

  1. LONGTEXT:具有4294967295或4GB(2^32 - 1)的最大长度文本列的字符。如果该值包含多字节字符,则有效最大长度会减少。 LONGTEXT列的有效最大长度还取决于客户端/服务器协议和可用内存中配置的最大数据包大小。每个LONGTEXT值都使用一个4字节的长度前缀进行存储,该前缀表示该值中的字节数。
  2. LONGBLOB
0

BLOB和TEXT值可以是非常长的,你可能会遇到一些限制使用它们:

仅头max_sort_length列的字节排序时使用。 max_sort_length的缺省值为1024.通过在服务器启动或运行时增加max_sort_length的值,可以在排序或分组中增加更多字节。任何客户端可以改变它的会话的max_sort_length变量的值:在正在使用的临时表处理的查询的结果BLOB或TEXT列的

mysql> SET max_sort_length = 2000; 
mysql> SELECT id, comment FROM t 
    -> ORDER BY comment; 

实例导致服务器使用磁盘上的一个表,而不是在内存,因为内存存储引擎不支持这些数据类型

+1

我非常不明白你在这里说什么,但我接受第二个答案,它对我很好,谢谢。 – Neenu 2014-09-04 10:50:22

相关问题