資料庫中的資料類型

來源:互聯網
上載者:User

資料庫中的資料類型通常有很多種,也有不同的分類方法。例如最常見的數值型、字元型、日期時間型,也有不太常見的布爾型、枚舉型、集合型等。要在DBMS中實現某種具體資料類型(例如最簡單的INTEGER)的支援,我們可以從以下幾個方面來考慮。1. 資料類型的名稱    資料類型名稱可以出現在DDL語句中,也可以出現在INFORMATION_SCHEMA等返回的元資訊中。    有的資料類型因為各種原因,還存在別名。2. 資料類型的取值範圍    這個也叫做值域。我們還需要設計好該類型的資料在運算時發生溢出、截斷、舍入等的行為。3. 資料類型的精度和標度(Precision和Scale)    對於整型數而言,標度總是0,精度可以是二進位的bit位元表示,也可能用十進位的數字位元表示。    對於浮點數而言,需要決定是否採用二進位精度,是否採用IEEE標準的浮點數,是單精確度還是雙精確度等。    對於精確數而言,當然也需要決定最大支援的精度和標度。    對於字元型而言,標度也總是0,精度通常指的是字元數,但也有系統用的是位元組數。既然是字元型,還得多考慮一下支援的字元集。    對於日期時間型而言,精度指的是秒在小數點後面的數字位元。4. 資料類型上支援的操作    例如對於INTEGER類型和其他各種類型之間的加減乘數等操作。5. 資料類型上支援的索引種類。    例如,很多系統都是不支援在大欄位類型上建立B+樹索引的,空間資料類型上通常需要建立空間索引。6. 資料類型的輸入輸出格式    幾乎所有的類型都能夠以字串的形式輸出。數值類型的輸入可以是數值常量,也可以是字串,甚至而二進位串,十六進位串等。7. 資料類型的網路傳輸格式    也就是DBMS伺服器在和用戶端介面之間傳送不同資料類型的格式,例如可以用字元類型,也可以用RPC定義的二進位格式,甚至自己定義的二進位格式。8. 資料類型在記憶體中的格式9. 資料類型在外存中的格式    對於簡單的整數類型,格式主要是位元組順序的問題。但是對於比較複雜的NUMEIRC類型,更重要的是考慮儲存和操作效率了。

相關文章

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.