我知道这已被要求分配,我很抱歉,但老实说我找不到答案。
这是我的管理员表:
CREATE TABLE `admins` (
`admin_id` int(11) NOT NULL AUTO_INCREMENT,
`admin_user` varchar(15) NOT NULL,
`admin_password` varchar(15) NOT NULL,
`admin_fName` varchar(20) NOT NULL,
`admin_lName` varchar(20) NOT NULL,
PRIMARY KEY (`admin_id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1
我试图创建的表来引用 admin_fname:
CREATE TABLE IF NOT EXISTS posts(
post_id INT NOT NULL AUTO_INCREMENT,
post_title varchar(50),
post_content varchar(255),
post_user varchar(20) NOT NULL,
PRIMARY KEY (post_id),
FOREIGN KEY (post_user) REFERENCES admins(admin_fName)
) ENGINE = INNODB;
post_user 好像和 admin_fname 属性一样,而且父表中有数据。任何机构都可以解释一下这里发生了什么吗?