1. 程式人生 > >MySQL 新增約束,修改約束,刪除約束

MySQL 新增約束,修改約束,刪除約束

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;

· 修改列名SQLServerexec sp_rename't_student.name','nn','column';

· 修改列名Oraclelter table bbb rename column nnnnn to hh int;

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

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

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;

· 修改列名SQLServerexec sp_rename't_student.name','nn','column';

· 修改列名Oraclealter table bbb rename column nnnnn to hh int;

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

主鍵約束

create table member5(

  id int(11),

  username varchar(32not 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(32not 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);