tente usar o except
a logica e mais ou menos essa tenta ai amigo!
delete from tabela2 where id in(select idfrom tabela1 expect selec id from 
tabela2)


Em Quarta 08 Novembro 2006 10:10, Marcos Fabrício Corso escreveu:
> quero criar essa rotina porque ja criei as primary_keys de ambas tabelas, e
> agora estou criando as foregin_key, so que o banco nao deixa eu criar a
> foreign_key porque algum registro da tabela02 nao existe na tabela01, por
> isso quero executar essa rotina para depois poder criar as foregin,
> entendeu ???
>
>
>
> Atenciosamente,
> Marcos Fabrício Corso
> Analista de Sistemas Júnior
> JM Informática
> (41)  3352-2688
> [EMAIL PROTECTED]
>   ----- Original Message -----
>   From: Fernando Souza
>   To: 'Grupo de Usuários do PostgreSQL no Brasil'
>   Sent: Wednesday, November 08, 2006 7:53 AM
>   Subject: [PostgreSQL-Brasil] RES: criar rotina
>
>
>   Isso não é necessário, se você tem a foreign key, o próprio banco não vai
> permitir que isto aconteça pois existe um relacionamento entre as duas
> tabelas. O que você pode fazer é colocar delete cascade entre as tabelas ou
> mesmo fazer um trigger para que ao deletar da tabela 1 seja deletado também
> os filhos da tabela 2.
>
>   Feranando.
>
>
>
> ---------------------------------------------------------------------------
>--- De: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Em nome de Marcos Fabrício
> Corso Enviada em: quarta-feira, 8 de novembro de 2006 09:48
>   Para: Postgres
>   Assunto: [PostgreSQL-Brasil] criar rotina
>
>
>   alguem pode me ajudar, preciso criar a seguinte rotina no postgres, sou
> iniciante em postgres e sql, uso o pgadmin com postgres 8.1 :
>
>   tenho uma tabela01 e uma tabela02.
>   a tabela02 tem uma foregin_key setada para a tabela01, como se ela fosse
> filha da tabala01. preciso que a rotina leia todos os registros da
> tabela02, se nao existir um registro na tabela01 e existir na tabela02, que
> esse registro da tabela02 seja deletado.
>
>
>   Atenciosamente,
>   Marcos Fabrício Corso
>   Analista de Sistemas Júnior
>   JM Informática
>   (41)  3352-2688
>   [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------------
>--- E-mail classificado pelo Identificador de Spam Inteligente.
>   Para alterar a categoria classificada, visite o Terra Mail
>
>
>
> ---------------------------------------------------------------------------
>--- Esta mensagem foi verificada pelo E-mail Protegido Terra.
>   Scan engine: McAfee VirusScan / Atualizado em 07/11/2006 / Versão:
> 4.4.00/4890 Proteja o seu e-mail Terra: http://mail.terra.com.br/
>
>
>
> ---------------------------------------------------------------------------
>---
>
>
>   _______________________________________________
>   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
_______________________________________________
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

Responder a