【发布时间】:2012-02-27 13:56:06
【问题描述】:
我正在尝试使用我的 create 语句调试问题,但是错误消息实际上没有任何意义。
脚本是:
CREATE TABLE marlin.SupportLog
(
IssueID INTEGER UNIQUE NOT NULL,
TypeID INTEGER NOT NULL ,
IssueDescription VARCHAR(5000) NOT NULL ,
MinutesSpent INTEGER NOT NULL ,
PriorityID INTEGER NOT NULL ,
UserID INTEGER NOT NULL ,
SubmittedDate DATETIME NOT NULL DEFAULT SYSDATETIME() ,
LastModifiedDate DATETIME NULL DEFAULT SYSDATETIME() ,
LastModifiedUserID INTEGER NULL
CONSTRAINT SupportLog_pk
PRIMARY KEY NONCLUSTERED (IssueID)
CONSTRAINT TypeID_fk
FOREIGN KEY (TypeID)
REFERENCES marlin.SupportIssueType(TypeID)
CONSTRAINT SLPriorityID_fk
FOREIGN KEY (PriorityID)
REFERENCES marlin.SupportPriority(PriorityID)
CONSTRAINT UserID_fk
FOREIGN KEY (UserID)
REFERENCES marlin.SupportUsers(UserID)
);
如果我注释掉最后两个约束,表格可以正常工作,但是如果我按照上面的方式运行它,我会收到:
Msg 8148, Level 16, State 0, Line 1
More than one column FOREIGN KEY constraint specified for column 'LastModifiedUserID', table 'marlin.SupportLog'.
Msg 8148, Level 16, State 0, Line 1
More than one column FOREIGN KEY constraint specified for column 'LastModifiedUserID', table 'marlin.SupportLog'.
这个错误似乎没有帮助 - 我不明白什么/我做错了什么?
【问题讨论】:
-
错误信息不适合SQL?!奇怪的。您能否发布其他三个表格的 DML,以便我们可以完全复制?
-
@JohnPick 哦,来吧!缺少逗号就是这样。但是这样一个模棱两可的错误信息!如果您可以将此作为答案发布,我会接受,以便您获得相应的声誉。
-
同意。错误消息具有误导性。
标签: sql sql-server sql-server-2008 tsql database-design