VARCHAR(M)是比CHAR更有彈性的資料型,同樣用來表示字元數據,但VARCHAR可以保存可變長度的字串。 其中M代表該資料類型所允許保存的字串的最大長度,只要長度小於該最大值的字串都可以被保存在該資料類型中。
因此,對於那些難以估計確切長度的資料物件來說,使用VARCHAR資料型別更加明智。 (推薦學習:MySQL影片教學)
MySQL4.1以前,VARCHAR資料型別支援的最大長度255,5.0以上版本支援65535位元組長度,utf8編碼下最多支援21843個字元(不為空)。
varchar特點
1、使用比固定長度類型(char)佔用更少儲存空間(除了使用ROW_FORMAT=FIXED建立的MyISAM表)。
2、使用額外的1-2位元組來儲存值長度,列長度<=255使用1位元組保存,其它情況使用2位元組保存。例如varchar(10)會佔用11位元組儲存空間,varchar(500)會佔用502位元組儲存空間。
3、節省空間,所以效能會有幫助。在更新的時候會產生額外的工作。
4、5.0以上版本,取值或設定值都會儲存字串結尾的空格,4.1之前的版本都會把字串最後的空格刪除掉。
5、最大長度遠大於平均長度,很少發生更新的時候適合使用varchar,因為碎片更少了。
VARCHAR型欄位的另一個突出的好處是它可以比CHAR型欄位佔用更少的記憶體和硬碟空間。當資料庫很大時,這種記憶體和磁碟空間的節省會變得非常重要.
雖然VARCHAR使用起來較為靈活,但是從整個系統的效能角度來說,CHAR資料型別的處理速度更快,有時甚至可以超出VARCHAR處理速度的50%。因此,使用者在設計資料庫時應綜合考慮各方面的因素,以求達到最佳的平衡。
更多MySQL相關技術文章,請造訪MySQL教學欄位進行學習!
以上是varchar最大長度的詳細內容。更多資訊請關注PHP中文網其他相關文章!