mysql - 复合外键

标签 mysql foreign-keys composite-key

我正在尝试创建一个带有复合外键的表。我不知道这个创作有什么问题:

CREATE TABLE Album( 
Name VARCHAR(30),  
Bandname VARCHAR(30), 
PRIMARY KEY(Name, Bandname),  
Erscheinungsjahr VARCHAR(30),
MusiklabelName VARCHAR(30),
BName VARCHAR(30),
BGründungsjahr INT(11),
BGründungsort VARCHAR(30),
FOREIGN KEY (BaName, BaGründungsjahr, BaGründungsort) REFERENCES Band
(Name, Gründungsjahr, Gründungsort)
)  
ENGINE=INNODB 

我可以告诉您,“Name”、“Gründungsjahr”和“Gründungsort”列作为组合主键存在于引用的表带中:

Table Band

显示的非特定错误是:

1005 - Can't create table 'band.album' (errno: 150)

我希望你们中有人能有一个想法。

最佳答案

我认为这是一个字符转换问题。尝试将字段名称中的变音符号更改为元音。

关于mysql - 复合外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12133176/

相关文章:

java - 如何使用 JPA 和 Hibernate 映射复合键?

MySQL 外键问题

sql - 表定义中的多引用外键?

php - Doctrine 2 复合键和 DQL 连接

php - Laravel Multi Insertion 及其关系

ruby-on-rails - Rails validates_uniqueness_of :scope on foreign key

mysql - 将新列添加到现有的复合唯一键

mysql - 如何让 NetBeans 7.4、Ruby 和 MySQL 一起运行(在 Windows 上)

php - 来自 phpMyAdmin 的跟踪报告的 MySQL 表

mysql - 如何在codeigniter中导出完整的数据库名称