mysql 16777215 MySQL 資料型別

2021-10-18 02:43:47 字數 2907 閱讀 8452

# mysql 資料型別

mysql 支援多種型別,大致可以分為三類:數值、日期/時間、字串和列舉型別。

# 數值型別 整型 型別 大小 範圍(有符號) 範圍(無符號) 用途 tinyint 1 位元組 (-128,127) (0,255) 小整數值

smallint 2 位元組 (-32768,32767) (0,65535) 大整數值

mediumint 3 位元組 (-8388608,8388607) (0,16777215) 大整數值

int 或 integer 4 位元組 (-2147483648,2147483647) (0,4294967295) 大整數值

bigint 8 位元組 (-9233372036854775808,9223372036854775807) (0,18446744073709551615) 極大整數值 整形示例 unsigned 的作用:就是將數字型別無符號化,例如 int 型的範圍:-2^31 ~ 2^31 - 1,而 int unsigned 的範圍:0 ~ 2^32。尤其適合用在自增或者沒有負數的情況。

zerofill 的作用:當插入 mysql 中該字段的值的長度小於定義的長度時,會在數值前面補全相應資料的 0。 浮點型 型別 大小 範圍(有符號) 範圍(無符號) 用途 float 4 位元組 (-3.402823466e+38,-1.175494351e-38),0,(1.175494351e-38,3.402823466351e+38) 0,(1.175494351e-38,3.402823466e+38) 單精度浮點數值

double 8 位元組 (-1.7976931348623157e+308,-2.2250738585072014e-308),0,(2.2250738585072014e-308,1.7976931348623157e+308) 0,(2.2250738585072014 e-308,1.7976931348623157e+308) 雙精度浮點數值

decimal 對decimal(m,d) ,如果m>d,為m+2否則為d+2 依賴於m和d的值 依賴於m和d的值 小數值 浮點型示例

# 日期和時間型別 型別 大小(位元組) 範圍 格式 用途 date 3 1000-01-01/9999-12-31 yyyy-mm-dd 日期值

time 3 '-838:59:59'/'838:59:59' hh:mm:ss 時間值或持續時間

year 1 1901/2155 yyyy 年份值

datetime 8 1000-01-01 00:00:00/9999-12-31 23:59:59 yyyy-mm-dd hh:mm:ss 混合日期和時間值

timestamp 4 1970-01-01 00:00:00/2038 結束時間是第 2147483647 秒,北京時間 2038-1-19 11:14:07,格林尼治時間 2023年1月19日 凌晨 03:14:07 yyyymmdd hhmmss 混合日期和時間值,時間戳 data、time、datetime 示例 timestamp 示例一 sql_mode 永久設定:my.cnf 配置檔案 [mysqld] 中新增 sql_mode=only_full_group_by,strict_trans_tables,error_for_division_by_zero,no_auto_create_user,no_engine_substitution,重啟生效。 timestamp 示例二 year 示例 datetime 示例

# 字串型別 型別 大小 用途 char 0-255 位元組 定長字串

varchar 0-65535 位元組 變長字串

tinyblob 0-255 位元組 不超過 255 個字元的二進位制字串

blob 0-65535 位元組 二進位制形式的長文字資料

mediumblob 0-16777215 位元組 二進位制形式的中等長度文字資料

longblob 0-4294967295 位元組 二進位制形式的極大文字資料

tinytext 0-255 位元組 短文本字串

text 0-65535 位元組 長文字資料

mediumtext 0-16777215 位元組 中等長度文字資料

longtext 0-4294967295 位元組 極大文字資料

char 和 varchar 型別類似,但它們儲存和檢索的方式不同。它們的最大長度和是否尾部空格被保留等方面也不同。在儲存或檢索過程中不進行大小寫轉換。

char列的長度固定為建立表是宣告的長度,範圍(0-255);而varchar的值是可變長字串範圍(0-65535)。

binary 和 varbinary 類似於 char 和 varchar,不同的是它們包含二進位制字串而不要非二進位制字串。也就是說,它們包含位元組字串而不是字元字串。這說明它們沒有字符集,並且排序和比較基於列值位元組的數值值。

blob 是乙個二進位製大物件,可以容納可變數量的資料。有 4 種 blob 型別:tinyblob、blob、mediumblob 和 longblob。它們區別在於可容納儲存範圍不同。

有 4 種 text 型別:tinytext、text、mediumtext 和 longtext。對應的這 4 種 blob 型別,可儲存的最大長度不同,可根據實際情況選擇。

# 列舉型別

enum 中文名稱叫列舉型別,它的值範圍需要在建立表時通過列舉方式顯示。enum只允許從值集合中選取單個值,而不能一次取多個值。

set 和 enum 非常相似,也是乙個字串物件,裡面可以包含 0-64 個成員。根據成員的不同,儲存上也有所不同。set 型別可以允許值集合中任意選擇 1 或多個元素進行組合。對超出範圍的內容將不允許注入,而對重複的值將進行自動去重。 型別 大小 用途 enum 對1-255個成員的列舉需要1個位元組儲存;對於255-65535個成員,需要2個位元組儲存;最多允許65535個成員。 單選:選擇性別

set 1-8個成員的集合,佔1個位元組;9-16個成員的集合,佔2個位元組;17-24個成員的集合,佔3個位元組;25-32個成員的集合,佔4個位元組;33-64個成員的集合,佔8個位元組; 多選:興趣愛好

mysql 16777215 MySQL 資料型別

mysql 資料型別 以下各節描述了mysql支援的資料型別。mysql資料型別 mysql支援三種型別的資料型別 字串,數字和日期 時間資料型別。字串資料型別 字串資料型別通常用於儲存名稱,位址,描述或任何包含字母和數字的值,包括二進位制資料,例如影象或音訊檔案。char和varchar型別 ch...

mysql使用規範 MySQL使用規範 MySQL

bitscn.com mysql使用規範 一 核心規範 1.不用資料庫做運營,如md5 order by rand 2.控制單錶資料量 a 單錶純int不超過1000w b 單錶含char不超過500w c 單庫不超過300 400個表 3.表字段數少而精 a 影響因素 i.io高效 ii.全表遍歷...

mysql部門分類 mysql部類參照 mysql

mysql資料庫內容總結 數字型別 tinyint m unsigned zerofull 1個位元組 預設的是有符號的 128 127 unsigned 無符號整數 範圍0 255 m 代表寬度 在zerofull時才有意義 只是乙個顯示效果,不會影響到實際的資料長度 zerofull 零填充 如...