主键,外键
外键表类型必须为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 (‘查询字符串’);
如果可能,请先创建表并插入所有数据再创建全文索引,而不要在创建表时候直接创建全文索引
网友评论