ALTER TABLE ... ADD CONSTRAINT 引发无法准备语句错误

问题描述 投票:0回答:1

考虑以下 SQL 查询。

CREATE TABLE People
(
PersonID int,
LastName varchar(255),
FirstName varchar(255)
);

然后插入一些示例好友。

INSERT INTO People values (1, 'FN1', 'LN1');    
INSERT INTO People values (1, 'FN1', 'LN1');     
INSERT INTO People values (2, 'FN2', 'LN1');   
INSERT INTO People values (2, 'FN2', 'LN3');
SELECT * FROM People;

结果:Response Image

我想让FN和LN组合是唯一的,但它们可以独立而不是唯一。

运行这个简单的 Alter 表。

ALTER TABLE People
ADD CONSTRAINT FN_and_LN_Combo_Unique UNIQUE (FirstName, LastName);

它正在投掷

Error 1: could not prepare statement (1 near "CONSTRAINT": syntax error)

为什么?我已经复制粘贴了W3教程。为什么会出现这个错误。还有如何使组合变得独特。

sql mysql unique alter
1个回答
-1
投票

我认为正确的语法应该是:

ALTER TABLE People
ADD UNIQUE FN_and_LN_Combo_Unique (fn, ln);
© www.soinside.com 2019 - 2024. All rights reserved.