MySQL支援的資料型別總結

2021-08-21 19:15:54 字數 1757 閱讀 3872

數值型別

一.說到底也就是四種型別:整數,浮點數,定點數,位型別

1.第一種:整數型別(唯一乙個區分符號),如果是負數的話肯定選有符號的。

無符號的範圍更加廣,從0開始。有符號的範圍小一些,從負數到正數都有涉獵。

位元組變化:1 2 3 4 8

int型別的預設為int(11),即有11位,正常情況下是不顯示的,當在字段型別int後面加上zerofill才會顯示,不夠的位數用0來補全。

當int(4)時,輸入的位789797,超過了4位,但是不會影響,還是按照789797來顯示。

int型別中的無符號屬性unsigned,當新增了zerofill時候,預設位unsigned屬性

記憶:最小的幾乎都是前面帶tiny的

tinyint---smallint----mediumint----int------bigint

2.第二種:浮點數(float 4位元組和double8位元組)

其實就是小數

float(10,2):代表這小數字+整數字共10位,其中小數字2位

例如:5959.44(沒有必要整數字一定是8位)

第三種:定點數(decimal)所佔位元組:m+2(m為整數字+小數字)

以字串的形式儲存,應用在高精度的情況下。例如貨幣金額等等

定點數和浮點數的區別:

總結:浮點數沒有精度限制,則資料按照實際顯示。

如果有精度,則按照精度走,四捨五入。

定點數沒有精度,預設按照decimal(10,0)來,如果有精度,按照精度走,如果資料超出了精度,則會報警告。

4.第四種;位型別

bit(m):m代表二進位制轉化後看到的位數,不寫預設位1

bin():二進位制   hex():十六進製制

想看bit:select bin(欄位名)/ hex(欄位名) from bai;

日期型別

範圍而言:datetime更大,範圍可以到9999

時間精度:datetime只可以更新中國時區,即東8區,而timestamp卻可以修改時區,同時檢視當前時間為新時區的時間

timestamp輸入null時,會預設輸入當前的時間,如果超出範圍則全為0

字串型別

插入用的是set

enum型別(列舉型別)

列舉型別:例如一星期有七天,不值得認為他是乙個字元,將(星期一,星期二......星期日)認為是乙個整體,裡面有7個成員。可以不分大小寫。

enum 中文名稱叫列舉型別,它的值範圍需要在建立表時通過列舉方式顯式指定,對1~255 個成員的列舉需要1 個位元組儲存;對於255~65535 個成員,需要2 個位元組儲存。最多允許有65535 個成員。而且插入成員的時候每次只可以插入乙個成員。

set型別

set型別隨著儲存成員的增加所佔的位元組數也快速變化,位元組數在64個成員時達到8個位元組。set型別最多64個成員,而eunm卻可以有65535個成員。

區別:位元組數多

成員數少

每次插入的成員可以為多個

mysql支援 mysql支援的資料型別

mysql支援的資料型別 一 整型 型別 tinyint 1位元組,取值範圍 128 127,預設長度4 smallint 2位元組,取值範圍 32768 32767,預設長度6 mediumint 3位元組 int 4位元組 2147483648 2147483647 bigint 8位元組 約束...

MySql支援的資料型別

今天總結一下mysql中支援的資料型別 首先從大體上看,mysql支援的型別有如下幾種,數值型別,日期型別,字串型別。位元型別,m代表每個位元位的數量,從1到64,預設值是1 非常小的整數,有符號的取值是 128到127,無符號的取值是 0 255,占用乙個位元組 這個型別跟上面的tinyint 1...

Mysql 支援的資料型別

mysql支援大量的列型別,它可以被分為3類 數字型別 日期和時間型別以及字串 字元 型別。本節首先給出可用型別的乙個概述,並且總結每個列型別的儲存需求,然後提供每個類中的型別性質的更詳細的描述。概述有意簡化,更詳細的說明應該考慮到有關特定列型別的附加資訊,例如你能為其指定值的允許格式。由mysql...