Php 如何在mysql中向特定列存储无限数据

Php 如何在mysql中向特定列存储无限数据,php,mysql,Php,Mysql,我的一个php项目使用mysql作为数据库。在这个项目中,php前端将允许用户修改数据库。它有一个列存储用户输入的数据 早些时候,我将数据类型用作sallint(255)。当数据库开始增长时,用户输入的数据自动需要更多的存储空间,因此我现在将数据类型更改为文本,提出了一个特别的问题,即需要比文本更多的数据存储空间。有没有办法让某一列提供无限的数据存储?您还可以看到另外两种类型: LONGTEXT:最大长度为4294967295或4GB(2^32–1)字符的文本列。如果值包含多字节字符,则有效最大

我的一个php项目使用mysql作为数据库。在这个项目中,php前端将允许用户修改数据库。它有一个列存储用户输入的数据


早些时候,我将数据类型用作sallint(255)。当数据库开始增长时,用户输入的数据自动需要更多的存储空间,因此我现在将数据类型更改为文本,提出了一个特别的问题,即需要比文本更多的数据存储空间。有没有办法让某一列提供无限的数据存储?

您还可以看到另外两种类型:

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

  • BLOB和TEXT值可能非常长,在使用它们时可能会遇到一些限制:

    排序时仅使用列的第一个最大排序长度字节。最大排序长度的默认值为1024。通过在服务器启动或运行时增加max_sort_length的值,可以使更多字节在排序或分组中具有重要意义。任何客户端都可以更改其会话最大排序长度变量的值:

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

    使用临时表处理的查询结果中的BLOB或文本列实例会导致服务器使用磁盘上的表,而不是内存中的表,因为内存存储引擎不支持这些数据类型

    我非常不理解您在这里说的话,但我接受第二个答案这对我来说很好谢谢你。