Olá pessoal..
estou com o sequinte problema:
eu defini uma sequencia para uma tabela e num dos campos da tabela eu usei a
clausula check para testar se o valor que vai para o campo é um valor
válido, o problema é que quando eu informo um valor inválido a minha
seqüência é incrementada, ou seja, quero que quando o valor para o campo na
clausula check seja invalido a minha sequencia não seja alterada, por
exmplo:
create sequence seq_teste start 1;
create table teste(campo1 int default nextval('seq_teste') not null,campo2
varchar(30) null check campo2='campo2');
após o insert correto
insert into teste(campo2) values ('campo2');
campo1 campo2
1 teste
agora se eu faco (insert errado):
insert into teste(campo2) values ('campo3');
e depois faco
insert into teste(campo2) values ('campo2');
campo1 campo2
1 teste
3 teste
e na verdade em vez do 3 o valor da sequencia tinha q ser 2 q seria o
proximo valor valido.
João Paulo.
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/
Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios