MySQL學習筆記——建立與約束
在新建一張資料庫表時,需要對錶的結構進行設定,其中包括定義表欄位名、定義欄位的資料型別、定義欄位資料的約束。
建立表一般使用create語句:
create table 表名(
欄位名1 資料型別 [約束]
欄位名2 資料型別 [約束]
...
[其它約束條件]
[其它約束條件]
...
)engine=儲存引擎 charset=儲存字符集;
其中欄位名後的約束一般為針對該欄位資料的約束;其它約束目前接觸到了外來鍵約束。
定義自增型欄位:
欄位名 int auto_increment primary key
資料型別
字串:
定長字串char(n);變長字串varchar;小文字tinyint(100字左右);長字串text;mediumtext;longtext;
日期型別:
日期 date YYYY-MM-DD; 時間 time HH-ii-ss;datetime×tamp YYYY-MM-DD HH-ii-ss;
二進位制型別;
整數型別:
int
小數型別
float;double
約束條件
定義欄位資料的約束:
主鍵約束 primary key
非空約束 not null
預設值約束 default 如 student_no int default 60;
唯一性約束 unique
其它約束:
外來鍵約束,如 constraint 約束名 foreign key(欄位名) references 表名(欄位名)
主鍵約束 constraint 約束名 primary key (欄位名)
唯一性約束 constraint 約束名 unique (欄位名)
表的修改
主要是利用alter table 語句。
一、修改表的欄位:alter table 表名 drop/add/change/modify/
刪除欄位:alter table 表名 drop 欄位名
新增欄位:alter table 表名 add 欄位名 資料型別 [欄位約束]
修改欄位名和資料型別:alter table 表名 change 舊欄位名 新欄位名 資料型別
僅修改欄位名:alter table 表明 modify 欄位名 資料型別
二、修改表欄位的約束
alter table 表名 add constraint 約束名 約束型別 (欄位名)
alter table 表名 add index 索引名 (欄位名)
相關文章
- 差分約束學習筆記筆記
- MySQL學習筆記4:完整性約束限制欄位MySql筆記
- mysql新增約束語句筆記MySql筆記
- [演算法學習筆記] 差分約束演算法筆記
- MySQL學習筆記之資料定義表約束,分頁方法總結MySql筆記
- Xilinx約束學習筆記(二)—— 定義時鐘筆記
- Solidity語言學習筆記————32、建立合約Solid筆記
- 《學習》6約束
- 約束外來鍵筆記筆記
- MySql學習筆記MySql筆記
- MySQL 約束MySql
- MySQL與Python的互動學習筆記MySqlPython筆記
- 【記錄】MySQL 學習筆記MySql筆記
- [記錄] MySQL 學習筆記MySql筆記
- mysql學習筆記3MySql筆記
- MySQL學習筆記2MySql筆記
- MySQL學習筆記:鎖MySql筆記
- MySql學習筆記06MySql筆記
- GObject學習筆記(二)型別建立與註冊GoObject筆記型別
- mysql學習筆記之備份與恢復MySql筆記
- Mysql入門【Mysql約束】MySql
- 一千行 MySQL 詳細學習筆記(值得學習與收藏)MySql筆記
- MySQL學習筆記:索引失效MySql筆記索引
- MySQL學習筆記之一MySql筆記
- mysql8.0學習筆記MySql筆記
- Git 分支的建立與切換 —— Git 學習筆記 14Git筆記
- MySQL 欄位約束MySql
- MySQL自增約束MySql
- 深度學習中的Lipschitz約束:泛化與生成模型深度學習模型
- Laravel學習筆記七-建立部落格Laravel筆記
- [PyTorch 學習筆記] 3.1 模型建立步驟與 nn.ModulePyTorch筆記模型
- QT學習筆記1(安裝、建立和訊號與槽)QT筆記
- MYSQL學習筆記14: 函式MySql筆記函式
- MySQL學習筆記【基礎篇】MySql筆記
- MySQL高階學習筆記(二)MySql筆記
- MySQL學習筆記---入門使用MySql筆記
- MySQL資料庫學習筆記MySql資料庫筆記
- 一千行 MySQL 學習筆記MySql筆記