1. 程式人生 > >超簡單!!——MySQL中新增、修改、刪除約束

超簡單!!——MySQL中新增、修改、刪除約束

轉自: https://blog.csdn.net/dreamsunday/article/details/22934009

ALTER TABLE:新增,修改,刪除表的列,約束等表的定義。

· 檢視列:desc 表名;

· 修改表名:alter table t_book rename to bbb;

· 新增列:alter table 表名 add column 列名 varchar(30);

· 刪除列:alter table 表名 drop column 列名;

· 修改列名MySQL: alter table bbb change nnnnn hh int;

· 修改列名SQLServer:exec sp_rename’t_student.name’,’nn’,’column’;

· 修改列名Oracle:lter table bbb rename column nnnnn to hh int;

· 修改列屬性:alter table t_book modify name varchar(22);

sp_rename:SQLServer 內建的儲存過程,用與修改表的定義。

MySQL 檢視約束,新增約束,刪除約束 新增列,修改列,刪除列

· 查看錶的欄位資訊:desc 表名;

· 查看錶的所有資訊:show create table 表名;

· 新增主鍵約束:alter table 表名 add constraint 主鍵 (形如:PK_表名) primary key 表名(主鍵欄位);

· 新增外來鍵約束:alter table 從表 add constraint 外來鍵(形如:FK_從表_主表) foreign key 從表(外來鍵欄位) references 主表(主鍵欄位);

· 刪除主鍵約束:alter table 表名 drop primary key;

· 刪除外來鍵約束:alter table 表名 drop foreign key 外來鍵(區分大小寫);

· 修改表名:alter table t_book rename to bbb;

· 新增列:alter table 表名 add column 列名 varchar(30);

· 刪除列:alter table 表名 drop column 列名;

· 修改列名MySQL: alter table bbb change nnnnn hh int;

· 修改列名SQLServer:exec sp_rename’t_student.name’,’nn’,’column’;

· 修改列名Oracle:alter table bbb rename column nnnnn to hh int;

· 修改列屬性:alter table t_book modify name varchar(22);

==主鍵約束==

create table member5(

id int(11),

username varchar(32) not null,

age int(11) ,

birthday date ,

email varchar(32) unique,

constraint pk_id primary key (id),

constraint ck_age check (age between 0 and 150)

);
這裡寫圖片描述

==外來鍵約束==

create table book(

id int(11),

bookname varchar(32) not null,

mid int(11),

constraint fk_mid foreign key(mid) references member(id)

)
這裡寫圖片描述

==修改約束==

alter table book drop primary key;

alter table book drop foreign key fk_book ;

alter table book add constraint pk_book primary key (id);

alter table book add constraint fk_book foreign key (mid) references member(id);
這裡寫圖片描述