數值型別
一.說到底也就是四種型別:整數,浮點數,定點數,位型別
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...