MySQL 資料類型說明解釋

來源:互聯網
上載者:User

標籤:列表   通用   lob   資料   tab   ext   時間戳記   obs   idt   

 

在 MySQL 中,有三種主要的類型:Text(文本)、Number(數字)和 Date/Time(日期/時間)類型。

Text 類型:

資料類型 描述
CHAR(size) 儲存固定長度的字串(可包含字母、數字以及特殊字元)。在括弧中指定字串的長度。最多 255 個字元。
VARCHAR(size) 儲存可變長度的字串(可包含字母、數字以及特殊字元)。在括弧中指定字串的最大長度。最多 255 個字元。注釋:如果值的長度大於 255,則被轉換為 TEXT 類型。
TINYTEXT 存放最大長度為 255 個字元的字串。
TEXT 存放最大長度為 65,535 個字元的字串。
BLOB 用於 BLOBs(Binary Large OBjects)。存放最多 65,535 位元組的資料。
MEDIUMTEXT 存放最大長度為 16,777,215 個字元的字串。
MEDIUMBLOB 用於 BLOBs(Binary Large OBjects)。存放最多 16,777,215 位元組的資料。
LONGTEXT 存放最大長度為 4,294,967,295 個字元的字串。
LONGBLOB 用於 BLOBs (Binary Large OBjects)。存放最多 4,294,967,295 位元組的資料。
ENUM(x,y,z,etc.) 允許您輸入可能值的列表。可以在 ENUM 列表中列出最大 65535 個值。如果列表中不存在插入的值,則插入空值。

注釋:這些值是按照您輸入的順序排序的。

可以按照此格式輸入可能的值: ENUM(‘X‘,‘Y‘,‘Z‘)

SET 與 ENUM 類似,不同的是,SET 最多隻能包含 64 個清單項目且 SET 可儲存一個以上的選擇。

Number 類型:

資料類型 描述
TINYINT(size) 帶符號-128到127 ,無符號0到255。
SMALLINT(size) 帶符號範圍-32768到32767,無符號0到65535, size 預設為 6。
MEDIUMINT(size) 帶符號範圍-8388608到8388607,無符號的範圍是0到16777215。 size 預設為9
INT(size) 帶符號範圍-2147483648到2147483647,無符號的範圍是0到4294967295。 size 預設為 11
BIGINT(size) 帶符號的範圍是-9223372036854775808到9223372036854775807,無符號的範圍是0到18446744073709551615。size 預設為 20
FLOAT(size,d) 帶有浮動小數點的小數字。在 size 參數中規定顯示最大位元。在 d 參數中規定小數點右側的最大位元。
DOUBLE(size,d) 帶有浮動小數點的大數字。在 size 參數中規顯示定最大位元。在 d 參數中規定小數點右側的最大位元。
DECIMAL(size,d) 作為字串儲存的 DOUBLE 類型,允許固定的小數點。在 size 參數中規定顯示最大位元。在 d 參數中規定小數點右側的最大位元。                

注意:以上的 size 代表的並不是儲存在資料庫中的具體的長度,如 int(4) 並不是只能儲存4個長度的數字。

實際上int(size)所佔多少儲存空間並無任何關係。int(3)、int(4)、int(8) 在磁碟上都是佔用 4 btyes 的儲存空間。就是在顯示給使用者的方式有點不同外,int(M) 跟 int 資料類型是相同的。

例如:

1、int的值為10 (指定zerofill)

int(9)顯示結果為000000010int(3)顯示結果為010

就是顯示的長度不一樣而已 都是佔用四個位元組的空間

 

 

 

Date 類型:

資料類型 描述
DATE() 日期。格式:YYYY-MM-DD

注釋:支援的範圍是從 ‘1000-01-01‘ 到 ‘9999-12-31‘

DATETIME() *日期和時間的組合。格式:YYYY-MM-DD HH:MM:SS

注釋:支援的範圍是從 ‘1000-01-01 00:00:00‘ 到 ‘9999-12-31 23:59:59‘

TIMESTAMP() *時間戳記。TIMESTAMP 值使用 Unix 紀元(‘1970-01-01 00:00:00‘ UTC) 至今的秒數來儲存。格式:YYYY-MM-DD HH:MM:SS

注釋:支援的範圍是從 ‘1970-01-01 00:00:01‘ UTC 到 ‘2038-01-09 03:14:07‘ UTC

TIME() 時間。格式:HH:MM:SS

注釋:支援的範圍是從 ‘-838:59:59‘ 到 ‘838:59:59‘

YEAR() 2 位或 4 位格式的年。

注釋:4 位格式所允許的值:1901 到 2155。2 位格式所允許的值:70 到 69,表示從 1970 到 2069。

*即便 DATETIME 和 TIMESTAMP 返回相同的格式,它們的工作方式很不同。在 INSERT 或 UPDATE 查詢中,TIMESTAMP 自動把自身設定為當前的日期和時間。TIMESTAMP 也接受不同的格式,比如 YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD 或 YYMMDD。

 

 

 

SQL 通用資料類型:

資料類型 描述
CHARACTER(n) 字元/字串。固定長度 n。
VARCHAR(n) 或
CHARACTER VARYING(n)
字元/字串。可變長度。最大長度 n。
BINARY(n) 二進位串。固定長度 n。
BOOLEAN 儲存 TRUE 或 FALSE 值
VARBINARY(n) 或
BINARY VARYING(n)
二進位串。可變長度。最大長度 n。
INTEGER(p) 整數值(沒有小數點)。精度 p。
SMALLINT 整數值(沒有小數點)。精度 5。
INTEGER 整數值(沒有小數點)。精度 10。
BIGINT 整數值(沒有小數點)。精度 19。
DECIMAL(p,s) 精確數值,精度 p,小數點後位元 s。例如:decimal(5,2) 是一個小數點前有 3 位元小數點後有 2 位元的數字。
NUMERIC(p,s) 精確數值,精度 p,小數點後位元 s。(與 DECIMAL 相同)
FLOAT(p) 近似數值,尾數精度 p。一個採用以 10 為基數的指數計數法的浮點數。該類型的 size 參數由一個指定最小精度的單一數字組成。
REAL 近似數值,尾數精度 7。
FLOAT 近似數值,尾數精度 16。
DOUBLE PRECISION 近似數值,尾數精度 16。
DATE 儲存年、月、日的值。
TIME 儲存小時、分、秒的值。
TIMESTAMP 儲存年、月、日、小時、分、秒的值。
INTERVAL 由一些整數欄位組成,代表一段時間,取決於區間的類型。
ARRAY 元素的固定長度的有序集合
MULTISET 元素的可變長度的無序集合
XML 儲存 XML 資料

引用地址:http://www.runoob.com/sql/sql-datatypes.html

 

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.