【发布时间】:2019-12-24 02:38:51
【问题描述】:
这条 SQL 语句有什么问题?
Create table JaretsSchedule
(
ScheduleID Int Primary Key NOT NULL,
FieldID Int NOT NULL,
HomeTeamID Int NOT NULL,
AwayTeamID Int NOT NULL,
GameTime DateTime NOT NULL
);
Insert into JaretsSchedule
Values
(1, 1, 1, 2, '2012-10-02 12:00:00'),
(1, 1, 1, 3, '2012-10-17 12:00:00'),
(1, 1, 1, 4, '2012-09-23 12:00:00'),
(1, 2, 2, 1, '2012-09-12 12:00:00'),
(1, 3, 3, 1, '2012-08-19 12:00:00'),
(1, 4, 4, 1, '2012-07-25 12:00:00'),
(2, 2, 2, 1, '2012-09-15 12:00:00'),
(2, 2, 2, 3, '2012-09-06 12:00:00'),
(2, 2, 2, 4, '2012-08-28 12:00:00'),
(2, 1, 1, 2, '2012-10-02 12:00:00'),
(2, 3, 3, 2, '2012-08-11 12:00:00'),
(2, 4, 4, 2, '2012-07-17 12:00:00'),
(3, 3, 3, 1, '2012-08-19 12:00:00'),
(3, 3, 3, 2, '2012-08-11 12:00:00'),
(3, 3, 3, 4, '2012-08-03 12:00:00'),
(3, 1, 1, 3, '2012-10-17 12:00:00'),
(3, 2, 2, 3, '2012-10-17 12:00:00'),
(3, 4, 4, 3, '2012-07-09 12:00:00'),
(4, 4, 4, 1, '2012-07-25 12:00:00'),
(4, 4, 4, 2, '2012-07-17 12:00:00'),
(4, 4, 4, 3, '2012-07-09 12:00:00'),
(4, 1, 1, 4, '2012-09-23 12:00:00'),
(4, 2, 2, 4, '2012-08-28 12:00:00'),
(4, 3, 3, 4, '2012-08-03 12:00:00');
结果错误:
消息 2627,第 14 级,状态 1,第 8 行
违反主键约束“PK__JaretsSc__9C8A5B696CFE9A03”。无法在对象“dbo.JaretsSchedule”中插入重复键。重复键值为 (1)。
【问题讨论】:
-
有4个团队,4个领域,4个赛程。
-
错误消息实际上是在告诉您问题所在。您不能多次插入相同的
ScheduleID值。检查你插入数据。 -
我重命名了这个问题,因为 SQL Server 没有实现古老而过时的 IBM 语言“Sequel”。相反,它实现了 SQL。 2019 年的今天 SQL 与 1970 年代的 Sequel 完全不同。
-
您对主键使用相同的值,即错误,如错误消息所指定。
标签: sql ssms create-table