我有下表。僅當另一列中的數據匹配時才具有唯一值
SQL-小提琴:http://sqlfiddle.com/#!2/8d142/1
CREATE TABLE steps
(
id int auto_increment primary key,
step_day varchar(10),
title varchar(32),
description varchar(500),
step_order tinyint unsigned not null
);
-- Test insert
INSERT INTO steps
(step_day, title, description, step_order)
VALUES
('monday', 'Step 1', 'Do some stuff.', '1'),
('saturday', 'Step 1', 'Do some stuff.', '1'),
('monday', 'Step 2', 'Do some stuff.', '2'),
('saturday', 'Step 2', 'Do more stuff.', '2');
在測試插入數據是目前確定,但我想,以保護列「標題」和「step_order」從重複的條目只有當數據「 step_day'列是一樣的。
所以......
('monday', 'Step 1', 'Do some stuff.', '1'),
('monday', 'Step 1', 'Do some stuff.', '1')
...是不好的,但...
('monday', 'Step 1', 'Do some stuff.', '1'),
('saturday', 'Step 1', 'Do some stuff.', '1')
...是確定的。
我該怎麼做?謝謝。