mysql中的列的屬性

2021-07-24 12:46:40 字數 1466 閱讀 3460

一.大致分為三大類

1.整形列(預設帶符號)

bigint 佔了8個位元組

int 佔了4個位元組

mediumint 佔了3個位元組

smallint 佔了2個位元組

tinyint 佔了乙個位元組

unsigned 代表無符號

zerofill 代表0填充,即:如果該數字不足引數m位,則自動補0,補夠m位.固定寬度的數字可以用0填充

如果設定某列為zerofill,則該列已經預設為unsigned,無符號型別.

如果沒有zerofill屬性,單獨的引數m,沒有任何意義.

2.浮點列與定點列

float(m,d)/double(m,d) m是精度位數 d小數的位數 m說白了就是總的位數 d就是小數點最後位數 不準確有精度的損失

decimal比float更精確 適合儲存精確的數字

3.字元型列 m代表字元

char(m) 定長  如果不夠m個字元,內部用空格補齊,取出時再把右側空格刪掉 這也說明如果右側用空取出將會被乾掉  最大限制255字元吧

vachar(m) 變長 沒有特殊的變化 6萬多個字元吧

char與varchar的對比

速度上: 定長速度快些 根據適當的情況選擇適合的型別

3.列舉型

enum() 首先都把值給定義好插入的時候如果不在這個值的範圍就會報錯 沒有在集合的之中不可以被insert進來 enum('男','女')

4.文字型別

text()存放大段文字用到的 相對一種text都應一種mediumblob()而相對有這種是存放二進位制中文的不會因為字符集的問題導致檔案資訊被過濾(丟失)

set() 首先把值給定義好了 在insert的時候可以選多個值 沒有在這個範圍也會報錯的

4.日期型

year()年

datetime()年月日時分秒

date()日期

timestamp()時間戳 我們一般不用這個因為計算不方便 我們用 int unsigned 作為時間戳

5 MySQL中的列屬性

mysql中的列屬性 列屬性列屬性 真正約束欄位的是資料型別,但是資料型別的越是很單一,需要一些額外的屬性來約束資料的合法性 列屬性包括哪些?null notnull default primary key auto increment comment 列描述列描述 comment 沒有實際意義,是...

mysql列鍵 Mysql列屬性

列屬性又稱之為字段屬性 在mysql中一共有6個屬性 null,預設值 default 列描述 comment 主鍵 primary key 唯一鍵 unique key 和自動增長 修改資料庫字符集 字符集和校對集 alter database 資料庫名字 charset 字符集 null屬性 1...

mysql 文件列 mysql,字元,列屬性,

數值 tinyint 1位元組 128 127 有符號 0 255 無符號 smallint 2位元組 32768 32767 0 65535 mediumint 3位元組 8388608 8388607 0 16777215 int intege 4位元組 214747483648 2147483...