MySQL表定義與完整性約束控制——學習筆記
阿新 • • 發佈:2020-12-09
資料表是資料庫中最重要、最基本的操作物件,是資料庫基本的儲存單位。
表中每一行代表一條唯一的記錄,每一列(欄位)代表記錄中的一個域。
一、資料表的操作
1、建立資料表
建立一個表名為stu1的資料表,裡面含有學生編號、學生姓名、學生性別、專業四個欄位
mysql> create table stu1( -> sno varchar(20) not null, -> sname varchar(20) not null, -> ssex enum('男','女') not null, -> zno varchar(4) not null, -> primary key(sno) -> ) -> engine=innoDB default charset=utf8 collate=utf8_bin;
其中,primary key 表示主鍵,engine為設定表的儲存引擎,default charset 為設定表的字符集,collate為設定壓縮索引關鍵字
2、檢視資料表結構
1)查看錶的名稱
show tables;
2)顯示錶的結構
desc stu1;
describe stu1;
show create table stu1;
3、修改資料表
1)修改資料表名
alter table stu1 rename stu;
2)修改欄位資料型別
alter table stu modify sname varchar(30);
3)修改欄位名
alter table stu change ssex sex varchar(4);
4)新增資料表字段
alter table stu add sbirth date not null;
5)刪除欄位
alter table stu drop zno;
6)修改欄位排序
alter table stu modify sex varchar(4) after sbirth;
7)更改表的儲存引擎
alter table stu engine=myisam;
8)刪除表中的外來鍵約束
alter table stu drop foreign key zno;
4、複製資料表
create table stu2 like stu;
create table stu3 as select sno,sname from stu;
5、刪除資料表
drop table if exists stu2,stu3;
6、注意事項
1)null值和空字元是不一樣的
2)長度小於4的varchar型別會被改變為char型別
二、MySQL約束控制