mysql怎么定义外键

CREATE TABLE customer(  id int( 11  )  NOT  NULL  AUTO_INCREMENT ,
  name varchar( 255  ) ,
  lastname  varchar( 255  ) ,
  age int( 11  ),
  CONSTRAINT customer_pk PRIMARY KEY (id)) TYPE=INNODB;


CREATE  TABLE book( id  int( 11  )  NOT  NULL  AUTO_INCREMENT ,
title varchar( 255  ) ,author varchar( 255  ) ,
customer_fk int( 11  ),
available TINYINT NOT NULL,
   CONSTRAINT book_pk PRIMARY  KEY ( id ),//这里只是定义主索引,constranit是约束的意思
INDEX (customer_fk)  ) TYPE=INNODB;  //外键一定是要定义索引,且它一定是int或integer类型



//constraint约束 
 ALTER  TABLE book ADD  CONSTRAINT book_customer FOREIGN  KEY ( customer_fk ) REFERENCES customer( id )  ON  UPDATE  RESTRICT  ON  DELETE  RESTRICT ;//级联删除

 

 

 

你可能感兴趣的:(mysql)