主键,外键

主键,外键

外键表类型必须为innodb

外键必须建立索引

外键保持数据完整性和一致性的机制,对业务处理有较好的校检作用

语法:

alter table `profile` //要为哪张表建立外键

add constraint `user_profile` //添加外键名为

foreign key (`uid`) //建立外键在哪个字段

references `user`(`id`) //外键关联的主表的哪个字段

on delete cascade on update cascade ;//主表修改时副表做的操作

cascade方式

在父表上update/delete记录时,同步update/delete掉子表的匹配记录

set null方式

在父表上update/delete记录时,将子表上匹配记录的列设为null

要注意子表的外键列不能为not null

No action方式

如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作

Restrict方式

同no action, 都是立即检查外键约束

删除外键

alter table 表名 drop foreign key 外键名

全文索引

fulltext

小于5.6版本的myisam可用,大于5.6版本都可

ALTER TABLE 表明 ADD FULLTEXT INDEX 索引名(列名1,列名2);

SELECT * FROM 表明 WHERE MATCH(列名1,列名2) AGAINST (‘查询字符串’);

如果可能,请先创建表并插入所有数据再创建全文索引,而不要在创建表时候直接创建全文索引

你可能感兴趣的:(主键,外键)