[firebase-br] RES: RES: RES: campos duplicados

andre conrado acf.andre em gmail.com
Ter Dez 21 17:22:19 -03 2010


Reijanio, vc ta dando volta eu torno de um problema simple... Crie um
indice composto.

Nenhuma das opções de SP fazem algo q diferencie disso.

Em 20/12/10, Reijanio Nunes Ribeiro<rnribeiro em gmail.com> escreveu:
> A0acho que consegui fiz mais ou menos assim
> CREATE OR ALTER PROCEDURE VERIF_PROD_EST (
>     p_cod integer,
>     p_codprod varchar(18),
>     p_local char(3),
>     p_cod_emp integer,
>     p_dt date)
> as
> begin
>   if(not Exists(select * from estoque WHERE codprod =:p_codprod and
> cod_local =:p_local))then
>     insert into estoque(codigo,codprod, cod_local, cod_emp, dt_entrada)
>     values
>     (
>     :p_cod,
>     :p_codprod ,
>     :p_local,
>     :p_cod_emp,
>     :p_dt
>      );
>   end
> end
> end^
> ta em teste ainda mais tem funcionado bem
>
> Em 20 de dezembro de 2010 10:20, Eduardo Jedliczka
> <edujed em gmail.com>escreveu:
>
>> Uma coisa não tem nada a ver com outra, pois é completamente possível
>> criar
>> um ÍNDICE ÚNICO composto.
>>
>> Não tem necessidade de ficar complicando ou reinventar a roda.
>>
>> ==========================
>> Eduardo Jedliczka
>> Apucarana - Pr
>> ==========================
>>
>>
>>
>> Em 19 de dezembro de 2010 08:20, Reijanio Nunes Ribeiro <
>> rnribeiro em gmail.com
>> > escreveu:
>>
>> > robson a questão é que vou te exemplificar
>> > tenho
>> > idprod         idtab
>> > 001             1
>> > 001             2
>> >
>> > se colocar um indice nele vai dar erro por que ele so vai aceitar um
>> unico
>> > idprod e idtab, vou tentar gerar uma stored procedure que leia od dois
>> > campos e gere uma exceção, ou uma sintaxe que faça isso, creio que sejam
>> > minhas opções ja que não posso amarra-las por indices unicos pois esta
>> > tabela podem conter varios produtos iguais e tabelas diferentes
>> >
>> > Em 18 de dezembro de 2010 17:10, Robson Catunda
>> > <robson.catunda em gmail.com>escreveu:
>> >
>> > > Reijanio,
>> > >
>> > > volto a insistir.. crie um índice único.
>> > >
>> > > Delete os duplicados antes de executar o comando abaixo, pois se já
>> > > existirem duplicações o indice não será criado.
>> > >
>> > > *ALTER TABLE* *NOME_DA_TABELA ADD CONSTRAINT* *NOME_DO_INDICE* *UNIQUE
>> > > (IDTAB, IDPROD);
>> > > *
>> > > Esse indice amarra codigo de tabela e codigo de produto exatamente
>> > > como
>> > vc
>> > > quer. Vai poder ter o mesmo produto em varios codigos de tabelas
>> > distintas,
>> > > mas não poderá ter o mesmo codigo de produto mais de uma vez no mesmo
>> > > código
>> > > de tabela.
>> > > ______________________________________________
>> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
>> > > http://www.firebase.com.br/fb/artigo.php?id=1107
>> > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>> > >
>> > ______________________________________________
>> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> > Para saber como gerenciar/excluir seu cadastro na lista, use:
>> > http://www.firebase.com.br/fb/artigo.php?id=1107
>> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>> >
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>


-- 
Um Abraço,
André Conrado.

055 21 8840-6232 - Oi
055 21 7856-8125 - NextTel ID:55*83*16416
055 21 9896-5449 - Vivo (apenas mensagens SMS)




Mais detalhes sobre a lista de discussão lista