我正在使用Yiiframwork开展项目,我在数据库项目中有这个表
CREATE TABLE IF NOT EXISTS `tbl_annonce` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`idEntreprise` tinyint(3) unsigned NOT NULL
COMMENT 'CONSTRAINT FOREIGN KEY (idEntreprise) REFERENCES tbl_entreprise(id)',
`titre` varchar(100) NOT NULL,
`detailleDiscription` varchar(5000) NOT NULL,
`categorie` varchar(100) DEFAULT NULL,
`typePoste` varchar(100) NOT NULL,
`salaireMin` varchar(80) NOT NULL,
`salaireMax` varchar(80) NOT NULL,
`niveauEtude` varchar(80) NOT NULL,
`niveauExperience` varchar(80) NOT NULL,
`langue` varchar(50) DEFAULT NULL,
`poste` varchar(50) NOT NULL,
`pays` varchar(50) NOT NULL,
`ville` varchar(50) NOT NULL,
`adresse` varchar(80) NOT NULL,
`datePublication` timestamp NOT NULL
DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`etat` varchar(50) NOT NULL,
`photo` varchar(255) NULL,
`nometr` text NOT NULL,
PRIMARY KEY (`id`),
CONSTRAINT `fk_idEntrepriseAnn`
FOREIGN KEY (idEntreprise)
REFERENCES tbl_entreprise(id)
ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
我只使用'comment'
,因为我在yii框架项目的教程中找到了它。
我在我的数据库中将属性“idEntreprise
”作为FK,但当我在表'idEntreprise'
中记录了其他entreprise
时,这不是问题,而是一定是个问题
所以我添加了'identreprise'
作为Fk,现在有了这个问题。
希望您理解我的问题:/
任何一个人都可以舔我!!
答案 0 :(得分:0)
要在列上定义外键,它必须满足某些条件。
确保
tbl_entreprise.id
已编入索引。idEntreprise tinyint(3) unsigned
中的列定义tbl_annonce
匹配
与tbl_entreprise.id