我有一个表中的Oracle:我怎样才能确保没有重复的行插入
NAME DATE TIMEOFDAY PAYMENT
SUBIR 10-08-12 DAY 10000
SUBIR 10-08-12 NIGHT 12000
现在我想在Oracle表的修改,使一个用户可以不pay
不止一次在特定的天。举例来说,我不能插入这样的:
NAME DATE TIMEOFDAY PAYMENT
SUBIR 10-08-12 DAY 10000
SUBIR 10-08-12 NIGHT 12000
SUBIR 10-08-12 DAY 14000
第三排不应该被以前的两个记录后,由于已有已在day
上取得了10-08-12
支付插入。那么我怎么能在oracle表中做这个功能呢?
编辑 - 我想我必须作出date
和timeofday
复合地unique
。可能吗?我的这种想法背后的原因是,如果我分别将它们分别作为unique
,则不允许用户第二次输入具有相同日期的行,但具有不同的timeofday
。
我必须做出'DATE'和'TIMEOFADAY'复合“独特”。可能吗? – Mistu4u 2012-08-10 14:00:56
这正是这个约束所做的,只允许两个字段的唯一组合。 – 2012-08-10 14:05:42