數據類型

時間

mysql中時間類型包括:date、dateTime、time、timeStamp、year,對於時間的使用只須要根據需求選擇對應的類型便可,只是須要注意如下幾點
一、幾種時間類型能夠精確到秒後最多6位
二、time的範圍爲'-838:59:59.000000' to '838:59:59.000000','11:12' means '11:12:00',1112 means 00:11:12 
三、timeStamp有時間範圍限制1970-01-01 00:00:01.000000至2038-01-19 03:14:07.999999
四、year保存兩位時: 70-99 表示 1970-1999   00-69 表示 2000-2069.

數字

mysql中的數字類型包括:integer(int)、smallInt、decimal(dec|fixed)、numeric
一、boolean類型至關於tinyInt(1)的變種,在mysql中true==1 false==0,可是if判斷時非0則爲true
二、整數類型根據表示範圍分爲了如下幾種
   2.1 tinyInt(8) 有符號範圍爲-128~127,無符號範圍爲0~255,如下類型相似區分有無符號表示不一樣範圍
   2.2 smallInt(16)
   2.3 mediumInt(24)
   2.4 int(32)
   2.5 bigInt(64)
三、浮點類型(m,d)
   3.1 float(32) 單精度浮點數
   3.2 double(64) 雙精度浮點數
四、小數類型: decimal(m,d)主要用於金額的保存m表明數字的個數包括小數位最大65

字符類型

一、char與varchar
  char 最大字節數爲255,內容不足給定長度時會填充空格保存,取出時去除,除非PAD_CHAR_TO_FULL_LENGTH被設置爲啓用'char判斷相等時會去重空格,可是like不會
  varchar最大65535長度,該長度爲字符數,根據編碼的不一樣轉換爲不一樣的最大值(好比utf的最大值爲21844),因爲是變長因此須要儲存長度在不大於255時使用一個子節不然兩個子節
二、binary與varbinary
  二進制形式下的char與varchar
三、blob
  tinyblob使用一字節保存長度,最大255子節,
  blob使用兩字節保存長度,最大2^16-1
  mediumBlob使用三字節保存長度,最大2^24-1
  longBlob使用四字節保存長度,最大2^32-1
四、text
  blob的非二進制的類型
五、enum
  枚舉類型,建立表時約定範圍
六、set
  集合類型,建立表示給定範圍

字符串須要注意字符編碼,包括存儲編碼與排序編碼,若是設置優先級爲列 > 表 > 數據庫 > 服務html

存儲無 存儲有
排序無 都是用默認 排序使用存儲默認
排序有 存儲使用排序的主編碼 使用給定的

對於char、varchar、text若是編碼爲binary就會轉換爲對應的bianary、varbinary、blob,enum與set不會有變化mysql

相關文章
相關標籤/搜索