mysql 的 varchar 與 text

今天撞到一堆錯誤, 簡記一下。
  • text 不能下 index。
  • varchar 在 5.03 前最多占 256 個 bytes, 之後可到 65536 bytes。Ubuntu 8.04 上對應的版本是 5.0.51a。
  • varchar 只能 index 前 1000 bytes, 語法是
    ALTER TABLE table_name ADD INDEX index_name ( column_name (key_length))
  • 注意是最大數量的單位是 bytes, 但設 varchar 大小和 key length 的單位都是用 characters。若 charset 用 utf8_general_ci, 則 key_length 只能設到 300 多。不然會出現錯誤訊息: "Specified key was too long; max key length is1000 bytes"。
透過天瓏下單買的 High Performance MySQL 2/e 來了 (還有附書套啊!!), 之後來好好讀讀, 別再自己亂查亂試, 太浪費時間了。

留言

這個網誌中的熱門文章

(C/C++ ) 如何在 Linux 上使用自行編譯的第三方函式庫

熟悉系統工具好處多多

virtualbox 使用 USB 裝置