十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
你这个ab是冗余存贮了。
在新抚等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、网站建设 网站设计制作按需求定制制作,公司网站建设,企业网站建设,品牌网站建设,营销型网站建设,成都外贸网站制作,新抚网站建设费用合理。
既然a表删除了记录,那么就应该同时删除ab表中对应的记录,来保持数据的一致性。
1.外键的作用,主要有两个:
一个是让数据库自己通过外键来保证数据的完整性和一致性
一个就是能够增加ER图的可读性
2.外键的配置
1)先创建一个主表,代码如下:
#创建表student,并添加各种约束
create table student
(
id int primary key , #主键约束
name varchar(20) , #唯一约束
age int NOT NULL, #非空约束
sex varchar(2) ,
address varchar(20) default '重庆' #默认约束
) ;
再通过一个外键,创建一个分数表,这样的话,就可以方便查询。代码如下:
#创建分数表
create table score
(
id int primary key ,
sid int ,
china int ,
history int,
english int,
constraint FK_sid foreign key(sid) references student(id) #通过外键创建链接
) ;
创建外键的方法有很多,其中最常见创建外键的格式是:constraint FK_*** foreign key(**) references 链接的外表
删除外键:
alter table drop foreign key '外键名'.
注意:
只有在定义外键时,用constraint 外键名 foreign key .... 方便进行外键的删除
DROP TABLE IF EXISTS `contact`;
CREATE TABLE `contact` (
`userId` int(10) NOT NULL AUTO_INCREMENT,
`username` varchar(30) NOT NULL,
`address` varchar(50) DEFAULT NULL,
`phone` varchar(11) DEFAULT NULL,
PRIMARY KEY (`userId`),
KEY `username` (`username`),
CONSTRAINT `username` FOREIGN KEY (`username`) REFERENCES `users` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;
mysql :
SELECT
ke.referenced_table_name parent,
ke.table_name child,
ke.REFERENCED_COLUMN_NAME parent_column,
ke.column_name child_column,
ke.constraint_name
FROM information_schema.KEY_COLUMN_USAGE ke
WHERE ke.referenced_table_name IS NOT NULL
and ke.referenced_table_name = 'table_name'
and ke.REFERENCED_TABLE_SCHEMA = 'db_name'
ORDER BY
ke.referenced_table_name;
这个语句是找出表上的主外键 或者使用下面的语句