如何将表格中的主键定义为两个唯一字段?
我的表格中有几列,我有两个键:ID
和SOURCE
。 ID
的值可以在列中出现两次,但ID + SOURCE的组合可以作为主键。
例如:
ID | SOURCE | TEXT
------------------
UNIQUE - 2312 | FB | BLA BLA
UNIQUE - 2312 | MU | BLA BLA
我正在使用MySQL数据库。如何在两列上创建主键?
答案 0 :(得分:3)
您可以使用ALTER TABLE
语法,如下所示:
ALTER TABLE my_table ADD CONSTRAINT my_table_pk PRIMARY KEY (id, source);
此外,这可以在CREATE TABLE
中定义,如下所示:
CREATE TABLE my_table
(
id int,
source varchar(3),
text varchar(20),
PRIMARY_KEY(id, source)
)
答案 1 :(得分:2)
添加约束以强制在两列上强制执行唯一性:
Alter table table_name add CONSTRAINT constr_ID unique (ID,SOURCE);
或者在两列上添加强制约束主键:
Alter table table_name add PRIMARY KEY (id, source);