【问题标题】:Composite Foreign Key复合外键
【发布时间】:2012-08-26 19:24:20
【问题描述】:

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

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中:: p>

显示的非特定错误是:

1005 - 无法创建表“band.album”(错误号:150)

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

【问题讨论】:

  • 这可能无法回答您的问题,但您可能会发现这很有用。 link
  • 好链接,谢谢。但其他用户应该知道:这无法解决我的问题。

标签: mysql foreign-keys composite-key


【解决方案1】:

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

【讨论】:

  • 好主意,谢谢,但这也无济于事。我的解决方案是用单个主键替换复合键,这样整个事情就变得不那么复杂了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-07
  • 2015-05-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多