是否可以在多列上使用unique?
喜欢:
user_vote user_id
------------------
1 1
1 2
2 1
既独特又
这一定是可能的
但是:
user_vote user_id
1 2
1 2
这一定不可能
答案 0 :(得分:2)
您可以在列的组合上添加唯一约束:
ALTER TABLE my_table
ADD CONSTRAINT my_table_uq UNIQUE (user_vote, user_id)
答案 1 :(得分:2)
CREATE TABLE uservotetable
(
user_vote int NOT NULL,
user_id int NOT NULL,
CONSTRAINT uservote UNIQUE (user_vote ,user_id)
);
如果您之前创建了表格,那么您可以使用 ALTER
ALTER TABLE uservotetable
ADD CONSTRAINT uservote UNIQUE (user_vote ,user_id)
这对您sql_unique
非常有用答案 2 :(得分:1)
您需要定义复合唯一约束。
SQL Server,
在SQL Server中执行此操作的一种方法是添加UNIQUE INDEX
ALTER TABLE table_name ADD UNIQUE INDEX (User_Vote, User_Id);
在Oracle中,
ALTER TABLE table_name
ADD CONSTRAINT uc_1 UNIQUE (User_Vote, User_Id)