Ir para conteúdo
Fórum Script Brasil
  • 0

Trigger no postgresql


lgdelai

Pergunta

Olá a todos.

Tenho duas tabelas:

================================================

EDITORAS

codeditora | cnpj | razaosocial(nome da editora) | cidade | qtdlivros

================================================

================================================

LIVROS

isbn(é o codigo do livro) | titulo | valor | codeditora

================================================

Preciso criar uma TRIGGER de modo que sempre que eu adicionar um livro na tabela LIVROS

a tabela EDITORA tenha a coluna QTDLIVROS atualizada com a quantidade de livros da

respectiva editora. tanto para mais quanto para menos no caso de exclusão de um livro.

Estou a dois dias pesquisando até de madrugada e não consigo chegar a uma solução, sei que é

simples, mas não tenho conhecimento profundo na sintaxe do postgresql.

Alguém pode me ajudar?

Desde já muito obrigado.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Eu estou entendendo que quantidade de livros é o mesmo que quantidade de títulos. É isso?

Eu acho melhor calcular na consulta do que criar trigger. Ficaria assim:

select e.razaosocial, e.codeditora, count(*) as total
from 
    livros l
    inner join
    editoras e on e.codeditora = l.codeditora
group by e.razaosocial, e.codeditora
order by e.razaosocial

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...