Mysql數據類型選用

  • 爲將來預留足夠擴展,alter table很麻煩
  • 永遠選足夠的最小長度

整型

  • 整型有五個,tinyint smallint mediumint int bigint
  • 對應占用1,2,3,4,8字節
  • 若是不用負數,後面加unsigned,分別大一倍,爲255,6萬多,一千多萬,四十多億,四十多億平方
  • 不要指定長度,int(1)和int(99)沒區別,其實都是int(11)的效果
  • 無符號爲int(10)
  • int(0)或int(-1)都會本身修正爲int(11)

字符串

  • 固定長度用char,比varchar省一字節
  • 長度很是不固定用varchar
  • char後面的空格會去掉
  • 二進制用binary*
  • 大文件是blob和text

其餘

  • 時間只能到秒,5.6.4版本好像到微秒
  • 1970年到2038年1月用timestamp四字節
  • 其餘用datetime,八字節
  • 還有year,date等
  • 枚舉用enum,省空間
  • integer,boolean都是別名而已
  • 實數用double或float,需精確要decimal
  • 表關聯字段最好同類型
  • 新版本有json類型
相關文章
相關標籤/搜索