gpt4 book ai didi

php - 无法在 PHPmyadmin 中创建外键

转载 作者:行者123 更新时间:2023-11-28 23:29:19 25 4
gpt4 key购买 nike

我正在尝试在我的一个表中创建外键,但出现此错误,您能帮忙解决吗

CREATE TABLE IF NOT EXISTS `albums` (
`id` smallint(5) unsigned NOT NULL,
`url` mediumtext NOT NULL,
`year` mediumint(9) NOT NULL,
`album_name` varchar(150) NOT NULL,
`album_cover` text NOT NULL,
`tracks_id` text NOT NULL,
`category` tinyint(4) NOT NULL,
`reciter` tinyint(4) NOT NULL,
`keywords` varchar(300) NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

外键表结构

CREATE TABLE IF NOT EXISTS `album_likes` (
`album_id` int(5) NOT NULL,
`likes` int(11) NOT NULL,
`dislikes` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

现在我制作这个外键的方法是在 phpmyadmin 中查看这个表的结构,然后添加约束名称选择列这是查询

ALTER TABLE `album_likes` ADD  CONSTRAINT `album_like_fk` FOREIGN KEY (`album_id`) REFERENCES `mp3script`.`albums`(`id`) ON DELETE CASCADE ON UPDATE NO ACTION;

我得到的结果

1215 - 无法添加外键约束

最佳答案

外键需要您引用的列的索引,在本例中为 albums.id

添加索引:

CREATE INDEX ids_nn_1 on albums(id);

你创建的外键应该可以工作

关于php - 无法在 PHPmyadmin 中创建外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37910975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com