2009/12/8 Bruno Carneiro <[email protected]>:
>
> Sou estudante, estou tentando fazer o projeto de um sistema.
>
> Na hora de projetar o banco de dados fiquei com dúvida sobre o que era uma
> view ou não.
>
> Porque no meu sistema, em vários momentos eu vou requisitar dados, de
> diversas formas diferentes.
>
> Quando eu devo usar uma view e quando eu devo usar uma função, por exemplo?
>
> A minha dúvida não é tecnica, é conceitual. Qual a diferença entre uma view
> e uma função que retorna dados?
>
> Informações técnicas também são bem vindas, mas a minha dúvida é mesmo
> conceitual.
>
> Dentro do meu schema, eu tenho separado as funções e as views.
>
> Eu sei quais são todos os dados que devo pedir ao banco, só não sei como
> devo classificá-los, se como view ou como função.
>
> Conjecturei que view é quando você pega dados diretos do banco, sem
> computá-los. Já quando você faz calculos em cima deles e os combina para
> gerar novos dados, seria uma função.
>
> Ok, alguém poderia me ajudar?
>
Em minha opinião você primeiro deve considerar:
- Tudo o que posso fazer com uma view posso fazer com uma função?
SIM
- Tudo o que posso fazer com uma função posso fazer com uma view?
NÃO
- Para se fazer a mesma coisa o custo de uma função é o maior que o
custo de uma view?
SIM (corrijam-me se estiver errado)
Portanto para mim é uma questão de custo: se você puder resolver seu
problema utilizando view então utilize-a, se não for possível então
utilize função.
Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral