запрет повторных данных

pavel18
Дата: 16.09.2004 13:18:40
Есть процедура
примерно такая:

create or replace procedure PRODUCT(
i_Ses number,
i_Cust number,
i_PRODUCTCODE number,
i_PRODUCTSUM number)
is
begin
INSERT INTO AZSSHEETS( SES, PAYTYPE, CUST,PRODUCTCODE,PRODUCTSUM)
VALUES( i_Ses, i_PAYTYPE, i_Cust, i_PRODUCTCODE, i_PRODUCTSUM)
;
commit;
end PRODUCT;

как запретить процедуре инсертить повторные данные,
по отделности совподения допускаются, но строки в целом совподать не должны.
Stilet
Дата: 16.09.2004 13:20:54
создай первичный ключ по всем полям
pavel18
Дата: 16.09.2004 14:00:54
не помогает.
Забыл сказать на каждую запись триггером создаётся id записи, если создавать первичные ключи на все столбцы id всё равно всегда будет новый.
А другой способ есть?
zalexaka
Дата: 16.09.2004 14:02:35
тогда уникальный индекс на всё кроме Id
anonimouse
Дата: 16.09.2004 14:03:33
Создай по всем полям, кроме id unique constraint и все...
pavel18
Дата: 16.09.2004 15:33:30
Спасибо,
но индексы и unique constraint не бодходят тогда вообще ни чего повторить нельзя, а уникальной должна быть только строка целиком.
Может в самой прцедуре это как-то прописать можно?
Elic
Дата: 16.09.2004 16:01:23
pavel18
индексы и unique constraint не бодходят тогда вообще ни чего повторить нельзя, а уникальной должна быть только строка целиком
Ты наверно над нами издеваешься?
alter table AZSSHEETS add unique( SES, PAYTYPE, CUST,PRODUCTCODE,PRODUCTSUM);
pavel18
Дата: 17.09.2004 10:13:05
Я не издеваюсь просто видимо заело ручник.
Спасибо всё работает!