MySQL資料類型

來源:互聯網
上載者:User

標籤:

  以前要用sql語句的時候都是直接搜命令用,平時也沒怎麼去重視記住它們,面試的時候面對sql語句卻發現怎麼也寫不好。所以現在就還是把常用的羅列,在需要的時候能夠方便的尋找,同時也可以隨時鞏固加深。

  1.整數類型

    (1).按需求來選用合適的類型可以最佳化表佔用的空間:

     TINYINT      1Byte

     SMALLINT       2Byte

   MEDIUMINT     3Byte

     INT             4Byte

     INTEGER        4Byte

     BIGINT     8Byte

    (2). 使用整數類型時可以搭配zerofill參數,將不足位空間由0來填補。而它的AUTO_INCREAMENT屬性可以+1自增欄位。

 2.浮點類型

    (1). MySQL: 資料類型(M,D) M為精度,是資料總長度,小數點不佔位置。D為標度,小數點後的長度。

  eg:FLOAT(6,2),按此要求則1234.56是符合要求的。 

    注意:定義浮點數若非必要不要使用這種會影響遷移的精度指定方法。對定點數DECIMAL是可以選擇的。定點數在MySQL中以字串形式儲存,精度比浮點數要高不會出現誤差,對資料的精度要求比較高選擇定點數是比較安全。

 3.日期和時間類型

   (1).YEAR(1),DATE(4),TIME(3),DATETIME(8),TIMESTAMP(4)

      TIME類型:

  1)."D HH:MM:SS": ‘2 11:30:50‘ ==> (2*24 + 11):30:50

  2)."HHMMSS": ‘345454‘ ==>34:54:54

      3).CURRENT_TIME和NOW()輸入當前系統時間。

  4.字串類型

    (1).CHAR(0~255)建立表後長度固定。雖然佔用空間較大但對長度變化不大和查詢速度要求較高的字串類型,最好選擇它。

  VARCHAR(0~65536)長度可變,指定為某個最大範圍,佔用空間為字串實際長度+1。

    (2).TEXT:只能儲存字串資料,如新聞的內容等。TINYTEXT(0~255BYTE),TEXT(0~65535BYTE),MEDIUMTEXT(0~167772150BYTE),LONGTEXT(0~4294967295BYTE)

    (3).SET和 ENUM:對取值在一定範圍的離散值很有效。

   SET最大64個成員,可以取多個,而ENUM(max65535)只能從成員中選擇一個。

  5.二進位類型

    (1).BINARY(M byte),VARBINARY(M)變長二進位字串,BIT(M位二進位最大值64)

    (2).BLOB:特殊二進位類型。儲存資料量很大的位元據片,MP3,PDF文檔等。可以將它們儲存在檔案系統中,然後在資料庫中儲存檔案的路徑,比直接儲存在資料庫中簡單但訪問速度較慢,但通常都是儲存路徑。

MySQL資料類型

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.