MariaDB 數(shù)據(jù)類型

2022-08-16 15:29 更新

良好的字段定義對于優(yōu)化數(shù)據(jù)庫至關重要。 理想的方法要求您專門使用所需類型和大小的字段。 例如,如果你只使用一個字段,五個字符寬,不要定義一個字段,20個字符寬。 字段(或列)類型也稱為給定存儲在字段中的數(shù)據(jù)類型的數(shù)據(jù)類型。

MariaDB數(shù)據(jù)類型可以分為數(shù)字,日期和時間以及字符串值。

數(shù)字數(shù)據(jù)類型

MariaDB支持的數(shù)字數(shù)據(jù)類型如下 -

  • TINYINT - 此數(shù)據(jù)類型表示落入-128到127的有符號范圍內的小整數(shù),以及0到255的無符號范圍。

  • BOOLEAN - 此數(shù)據(jù)類型將值0與“false”相關聯(lián),值1與“true”相關聯(lián)。

  • SMALLINT - 此數(shù)據(jù)類型表示-32768到32768的有符號范圍內的整數(shù),以及0到65535的無符號范圍。

  • MEDIUMINT - 此數(shù)據(jù)類型表示有符號范圍-8388608到8388607中的整數(shù),無符號范圍0到16777215。

  • INT(也為INTEGER) - 此數(shù)據(jù)類型表示正常大小的整數(shù)。當標記為unsigned時,范圍跨越0到4294967295.當有符號(默認設置)時,范圍跨越-2147483648到2147483647.當列設置為ZEROFILL(無符號狀態(tài))時,其所有值都由零添加INT值中的M個數(shù)字。

  • BIGINT - 此數(shù)據(jù)類型表示有符號范圍9223372036854775808到9223372036854775807內的整數(shù),無符號范圍0到18446744073709551615。

  • DECIMALDEC,NUMERIC,F(xiàn)IXED) - 該數(shù)據(jù)類型表示精確的定點數(shù),M指定其數(shù)字,D指定小數(shù)后的數(shù)字。 M值不添加“ - ”或小數(shù)點。如果D設置為0,則不會出現(xiàn)小數(shù)或小數(shù)部分,并且該值將舍入為最接近的DECIMAL INSERT。最大允許位數(shù)為65,小數(shù)位數(shù)的最大值為30.默認值M的默認值為10,省略時D為0。

  • FLOAT - 此數(shù)據(jù)類型表示值0的小的浮點數(shù)或以下范圍內的數(shù)字 - 

    • -3.402823466E + 38至-1.175494351E-38

    • 1.175494351E-38至3.402823466E + 38

  • DOUBLE(也是REAL和DOUBLE PRECISION) - 此數(shù)據(jù)類型表示值0的正常大小的浮點數(shù),或以下范圍內的值 - 

    • -1.7976931348623157E + 308至-2.2250738585072014E-308

    • 2.2250738585072014E-308至1.7976931348623157E + 308

  • BIT - 此數(shù)據(jù)類型表示位字段,M指定每個值的位數(shù)。省略M時,默認值為1.位值可以通過“b'[value]'”應用,其中值表示0和1中的位值。零填充從左邊自動發(fā)生全長;例如,“10”變?yōu)椤?010”。

日期和時間數(shù)據(jù)類型

MariaDB支持的日期和時間數(shù)據(jù)類型如下 - 

  • DATE - 此數(shù)據(jù)類型表示日期范圍“1000-01-01”到“9999-12-31”,并使用“YYYY-MM-DD”日期格式。

  • TIME - 此數(shù)據(jù)類型表示“-838:59:59.999999”到“838:59:59.999999”的時間范圍。

  • DATETIME - 此數(shù)據(jù)類型表示范圍“1000-01-01 00:00:00.000000”至“9999-12-31 23:59:59.999999”。它使用“YYYY-MM-DD HH:MM:SS”格式 。

  • TIMESTAMP - 此數(shù)據(jù)類型表示“YYYY-MM-DD HH:MM:DD”格式的時間戳。 它主要用于詳細描述數(shù)據(jù)庫修改的時間,例如插入或更新。

  • YEAR - 此數(shù)據(jù)類型表示4位數(shù)格式的年份。 四位數(shù)格式允許在1901到2155和0000范圍內的值。

字符串數(shù)據(jù)類型

MariaDB支持的字符串類型值如下 -

  • String literals - 此數(shù)據(jù)類型表示用引號括起來的字符序列。

  • CHAR - 此數(shù)據(jù)類型表示包含指定長度的空格的右側帶有固定長度的字符串。 M表示字符的列長度,取值范圍為0?255,缺省值為1。

  • VARCHAR - 此數(shù)據(jù)類型表示一個可變長度字符串,M范圍(最大列長度)為0到65535。

  • BINARY - 此數(shù)據(jù)類型表示二進制字節(jié)字符串,M為列長度(以字節(jié)為單位)。

  • VARBINARY - 此數(shù)據(jù)類型表示可變長度的二進制字節(jié)字符串,M為列長度。

  • TINYBLOB - 此數(shù)據(jù)類型表示最大長度為255(28 - 1)個字節(jié)的blob列。在存儲中,每個都使用一個字節(jié)長度的前綴,表示值中的字節(jié)數(shù)量。

  • BLOB - 此數(shù)據(jù)類型表示最大長度為65,535(216 - 1)個字節(jié)的blob列。在存儲中,每個都使用兩字節(jié)長度的前綴,表示值中的字節(jié)數(shù)量。

  • MEDIUMBLOB - 此數(shù)據(jù)類型表示最大長度為16,777,215(224 - 1)個字節(jié)的blob列。在存儲中,每個都使用一個三字節(jié)長度前綴,表示值中的字節(jié)數(shù)量。

  • LONGBLOB - 此數(shù)據(jù)類型表示最大長度為4,294,967,295(232 - 1)個字節(jié)的blob列。在存儲中,每個使用四字節(jié)長度的前綴,表示值中的字節(jié)數(shù)量。

  • TINYTEXT - 此數(shù)據(jù)類型表示最大長度為255(28 - 1)個字符的文本列。在存儲中,每個都使用一個字節(jié)長度的前綴,表示值中的字節(jié)數(shù)量。

  • TEXT - 此數(shù)據(jù)類型表示最大長度為65,535(216 - 1)個字符的文本列。在存儲中,每個都使用兩字節(jié)長度的前綴,表示值中的字節(jié)數(shù)量。

  • MEDIUMTEXT - 此數(shù)據(jù)類型表示最大長度為16,777,215(224 - 1)個字符的文本列。在存儲中,每個都使用三字節(jié)長度前綴,表示值中的字節(jié)數(shù)量。

  • LONGTEXT - 此數(shù)據(jù)類型表示最大長度為4,294,967,295或4GB(232 - 1)個字符的文本列。在存儲中,每個使用四字節(jié)長度的前綴,表示值中的字節(jié)數(shù)量。

  • ENUM - 此數(shù)據(jù)類型表示一個列表中只有一個值的字符串對象。

  • SET - 此數(shù)據(jù)類型表示一個列表中具有零個或多個值的字符串對象,最多包含64個成員。 SET值在內部作為整數(shù)值存在。


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號