2014-09-04 87 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

相關問題