mysql如何給欄位新增註釋(mysql如何新增表的註釋)
本部分內容是mysql系列的第四部分 ,若想檢視前面的系列的內容,請見:SQL語言分類有哪幾種?分別都對應著哪些關鍵字?都整理在這裡了
這一部分主要介紹建立表時所填寫的每一部分資訊 。
建立表
建立表完整語法:
create table 表名( 欄位名稱1 資料型別[(長度) 約束條件 註釋], 欄位名稱2 資料型別[(長度) 約束條件 註釋] ) [編碼 註釋] # 1. 必選項 : 表名 欄位名稱 資料型別 # 2. 可選項 : 長度 約束條件 註釋 編碼 # 3.示例: create table students( id int(20) primary key auto_increment COMMENT '學生編號', name varchar(20) not null comment '學生姓名', grade varchar(5) not null comment '學生年級', sex enum('男','女') default '男' comment '性別' ) charset='utf-8' comment '學生表'
資料型別
在上面建立表時,給每個欄位指定了具體的資料型別 ,但實際資料型別要包含的多,我們可以將其進行簡單的分類,比如 :
- 字元文字型別
- 數字型別
- 日期型別
字元文字型別
型別 | 說明 | 大小 |
char | 定長字串 | 0-255 bytes |
varchar | 變長字串 | 0-65535 bytes |
tinytext | 短文字字串 | 0-255 bytes |
text | 文字字串 | 0-65535 bytes |
longtext | 長文字字串 | 0-4 294967295 bytes |
數字型別
型別 | 說明 | 範圍(有符號) | 範圍(無符號) |
TINYINT | 微整數 | (-128,127) | (0,255) |
SMALLINT | 小整數 | (-32 768,32 767) | (0,65 535) |
MEDIUMINT | 中整數 | (-8 388 608,8 388 607) | (0,16 777 215) |
INT或INTEGER | 整數 | (-2 147 483 648,2 147 483 647) | (0,4 294 967 295) |
BIGINT | 大整數 | (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) | (0,18 446 744 073 709 551 615) |
FLOAT | 單精度 浮點數值 | (-3.402 823 466 E 38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E 38) | 0,(1.175 494 351 E-38,3.402 823 466 E 38) |
DOUBLE | 雙精度 浮點數值 | (-1.797 693 134 862 315 7 E 308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E 308) | 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E 308) |
DECIMAL | 小數值 | 依賴於M和D的值 | 依賴於M和D的值 |
日期型別
型別 | 說明 | 範圍 | 格式 |
DATE | 日期 | 1000-01-01/9999-12-31 | YYYY-MM-DD |
TIME | 時間 | '-838:59:59'/'838:59:59' | HH:MM:SS |
YEAR | 年 | 1901/2155 | YYYY |
DATETIME | 日期和時間 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS |
選項型別
型別 | 說明 | 舉例 |
enum | 列舉,多個值中選擇一個 | enum('男','女') |
set | 集合 - 多個值中選擇一個或多個值 | SET('值1','值2','值3'...,'值n') |
欄位約束
格式: create table 表名( 欄位名 資料型別 約束, 欄位名 資料型別 約束 ... )
其中約束主要包括:
這裡需要區分幾個約束,
- 主鍵約束 : 唯一且不能為空
- 唯一約束 : 值唯一
- 為空約束 : 值不能為空
其中主鍵約束 = 唯一約束 為空約束
註釋
有時候我們看到表的後面都有註釋 ,通過註釋我們能快速地找到對應表 ,比如下面表的註釋 。
當然,此註釋有兩種設定方式,一種就是通過客戶端工具建立/修改表時新增註釋資訊 ,具體操作可參考:mysql系列之一文詳解Navicat工具的使用(二)
初次之外,也可以SQL語句新增註釋 。具體如下 :
create table students( id int(20) primary key auto_increment comment '學生編號', name varchar(20) not null comment '學生姓名', grade varchar(5) not null comment '學生年級', sex enum('男','女') default '男' comment '性別' ) comment '學生表'
這裡使用的comment就是新增的註釋資訊,新增的註釋不僅可以在欄位上進行備註 ,也可以在表名上進行備註 。