MySQL的數據類型

MySQL的數據類型<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

本文突出介紹了MySQL支持的很多重要的數據類型,並介紹如何使用。

數據庫存儲中的數據類型與大小各異。有些地方只存儲數字類型,有些只存儲文本類型,有些二者而兼之。而很多數據庫支持各種專用類型:日期和時間類型,二進制字符類型以及布爾類型。

選擇數據類型與數據相匹配是數據庫設計中最爲重要的部分,因爲這種類型將會影響到RDBMS的效率與性能。所以,對RDBMS的數據類型選擇應給予足夠的重視。

這就是編寫本文的主要目的。表A將列舉了MySQL支持的絕大部分重要的數據類型,而MySQL是當前最爲流行的免費RDBMS。文中還描述了何時與如何使用這些數據類型。這將有助於建立一個數據庫的合理設計。

 

A

數據類型

描述

字節

推薦使用

SMALLINT

整數,從-32000 +32000範圍

2

存儲相對比較小的整數。

比如: 年紀,數量

INT

整數,從-2000000000 +2000000000 範圍

4

存儲中等整數

例如: 距離

BIGINT

不能用SMALLINT INT描述的超大整數。

8

存儲超大的整數

例如: 科學/數學數據

FLOAT

單精度浮點型數據

4

存儲小數數據

例如:測量,溫度

DOUBLE

雙精度浮點型數據

8

需要雙精度存儲的小數數據

例如:科學數據

DECIMAL

用戶自定義精度的浮點型數據

變量;取決於精度與長度

以特別高的精度存儲小數數據。

例如:貨幣數額,科學數據

CHAR

固定長度的字符串

特定字符串長度(高達255字符)

存儲通常包含預定義字符串的變量

例如: 定期航線,國家或郵編

VARCHAR

具有最大限制的可變長度的字符串

變量; 1 + 實際字符串長度 (高達 255 字符)

存儲不同長度的字符串值(高達一個特定的最大限度).

例如:名字,密碼,短文標籤

TEXT

沒有最大長度限制的可變長度的字符串

Variable; 2 + actual string length

存儲大型文本數據

例如: 新聞故事,產品描述

BLOB

二進制字符串

變量;2 + 實際字符串長度

存儲二進制數據

例如:圖片,附件,二進制文檔

DATE

yyyy-mm-dd格式的日期

3

存儲日期

例如:生日,產品滿期

TIME

hh:mm:ss格式的時間

3

存儲時間或時間間隔

例如:報警聲,兩時間之間的間隔,任務開始/結束時間

DATETIME

yyyy-mm-ddhh:mm:ss格式結合日期和時間

8

存儲包含日期和時間的數據

例如:提醒的人,事件

TIMESTAMP

yyyy-mm-ddhh:mm:ss格式結合日期和時間

4

記錄即時時間

例如:事件提醒器,最後進入的時間標記

YEAR

yyyy格式的年份

1

存儲年份

例如:畢業年,出生年

ENUM

一組數據,用戶可從中選擇其中一個

1 2個字節

存儲字符屬性,只能從中選擇之一

例如:布爾量選擇,如性別

SET

一組數據,用戶可從中選擇其中01或更多。

18字節;取決於設置的大小

存儲字符屬性,可從中選擇多個字符的聯合。

例如:多選項選擇,比如業餘愛好和興趣。

對於一個完整的列表和詳細描述,可以查看MySQL manual。你也可以閱讀文章Choosing the Right Type for a Column

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章