Mysql 外键约束错误
我有两张桌子,一张是戒指,另一张是样式 CREATE TABLE IF NOT EXISTS `ring` ( `jewelry_id` int(11) NOT NULL auto_increment, `ring_id` varchar(50) NOT NULL, `gender` varchar(10) NOT NULL, `description` text NOT NULL, `image` varchar(100) NOT NULL, `type` text NOT NULL, PRIMARY KEY (`jewelry_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1; 如果不存在“环”,则创建表( `珠宝id`int(11)非空自动增量, `ring_id`varchar(50)不为空, `性别'varchar(10)不为空, `description`文本不为空, `图像'varchar(100)不为空, `键入'text NOT NULL, 主键(`jewelry\u id`) )ENGINE=MyISAM默认字符集=latin1自动增量=1; 西尔的桌子是空的 CREATE TABLE IF NOT EXISTS `style` ( `style_id` int(11) NOT NULL AUTO_INCREMENT, `style` text NOT NULL, `jewelry_id` int(11) NOT NULL, PRIMARY KEY (`style_id`), KEY `jewelry_id` (`jewelry_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1; 如果不存在“样式”,则创建表( `style_id`int(11)非空自动增量, `样式`文本不为空, `珠宝id`int(11)不为空, 主键(`style_id`), 钥匙“珠宝id”(“珠宝id”) )ENGINE=InnoDB默认字符集=latin1自动增量=1; 当我向样式表添加外键时,它会给我错误信息,即 ALTER TABLE `style` ADD CONSTRAINT `style_ibfk_1` FOREIGN KEY (`jewelry_id`) REFERENCES `ring` (`jewelry_id`) ON DELETE CASCADE ON UPDATE CASCADE; 改变表格样式` 在更新级联的删除级联上添加约束`style\u ibfk\u 1`外键(`jewelry\u id`)引用`ring`(`jewelry\u id`); 错误是 #1005 - Can't create table './j_jewelry/#sql-2c3b_750.frm' (errno: 150) (Details...</a>)Mysql 外键约束错误,mysql,mysql-error-1005,Mysql,Mysql Error 1005,我有两张桌子,一张是戒指,另一张是样式 CREATE TABLE IF NOT EXISTS `ring` ( `jewelry_id` int(11) NOT NULL auto_increment, `ring_id` varchar(50) NOT NULL, `gender` varchar(10) NOT NULL, `description` text NOT NULL, `image` varchar(100) NOT NULL, `type` text N
#1005-无法创建表'./j#u jewelry/#sql-2c3b_750.frm'(错误号:150)(详细信息…MyISAM表不支持外键。将两个表都设置为InnoDB。对于引用表类型的外键,表类型应为InnoDB他正在向样式表添加约束,该样式表为InnoDB。@Dan:对于新用户提出的格式良好的问题,两个表都必须为InnoDB.+1。欢迎来到SO。