【发布时间】:2018-10-09 15:07:46
【问题描述】:
创建一个表,并且不能创建外键,因为外键需要引用唯一值 - 据我所知。但是在 phpmyadmin 上,您可以在索引中插入一行,然后将其作为外键引用。
我目前正在使用 SQL Server Management Studio,无法引用外键。
我的桌子是
create table gameEvents(
event id int,
eventtext varchar(500),
eventLocation varchar(150),
eventFeedback varchar(300),
choiceOne varchar(100),
choiceTwo varchar(100),
eventDifficulty int,
event Result int
)
Create table gameChoice(
eventDifficulty int,
eventResult int,
ChoiceOneR int,
ChoiceOneV int,
ChoiceTwoR int,
ChoiceTwoV int
)
我正在尝试将 eventDifficulty 和 eventResult (gameChoice) 引用到具有相同列名的 gameEvents。
使用的代码
Alter table gameEvents ADD CONSTRAINT FK_difficulty FOREIGN KEY (eventDifficulty) REFERENCES gameChoice(eventDifficulty);
(代码是手动输入的,以防出现语法错误)
收到错误 - 引用表 'gameChoice' 中没有与外键 'FK_difficulty' 中的引用列列表匹配的主键或候选键
我理解错误。但是,除了使用 phpmyadmin 之外,我没有看到任何其他方式来制作这些外键链接……有没有办法在 SQL Server Managment Studio 上制作这些外键
【问题讨论】:
-
先添加主键
-
我不确定您在问什么...
gameChoice.eventDifficulty需要是主键或具有唯一索引。
标签: sql sql-server foreign-keys