資料庫欄位屬性及如何建表
阿新 • • 發佈:2020-07-30
2.3、資料庫的欄位屬性(重點)
Unsigned:
- 無符號的整數
- 聲明瞭該列不能為負數
zerofill:
- 0填充的
- 不足的位數,使用0來填充,int(3) ,5 ---005
自增:
- 通常理解為自增,自動在上一條記錄的基礎上+1(預設)
- 通常用來設計唯一的主鍵~ index,必須是整數型別
- 可以自定義設計主鍵自增的起始值和步長
非空 : NULL not null
- 假設設定為not null ,如果不給它賦值,就會報錯!
- NULL,如果不填寫值,預設就是null!
預設:
- 設定預設值!
- sex,預設值為男,如果不指定該列的值,則為預設值
拓展
/* 每一個表都必須存在以下5個欄位 id 主鍵 version 樂觀鎖 is_delete 偽刪除 gmt_create 建立時間 gmt_update 修改時間 */
2.4、建立資料庫表
-- AUTO INCREMENT 自增 -- 字串使用單引號括起來! -- 所有的語句後面加,(英文的),最後一個不用加 -- PRIMARY KEY主鍵,一般一個表只有一個唯一.的主鍵! DROP TABLE student CREATE TABLE IF NOT EXISTS `student`( `id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '學號', `name` VARCHAR(30) NOT NULL DEFAULT '無名氏' COMMENT '姓名', `pwd` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密碼', `sex` VARCHAR(3) NOT NULL DEFAULT '男' COMMENT '性別', `birthday` DATETIME DEFAULT NULL COMMENT '出生日期', `adress` VARCHAR(20) DEFAULT NULL COMMENT '家庭住址', `email` VARCHAR(20) DEFAULT NULL COMMENT '郵箱', PRIMARY KEY (`id`) )ENGINE INNODB DEFAULT CHARSET utf8; COMMIT;
格式:
CREATE TABLE [IF NOT EXISTS] `表名`(
`欄位名` 型別 [屬性] [索引] [註釋],
`欄位名` 型別 [屬性] [索引] [註釋],
.....
`欄位名` 型別 [屬性] [索引] [註釋],
`欄位名` 型別 [屬性] [索引] [註釋]
)[表型別][字符集設定][註釋];