Bom dia a todos.
[quote=erickfm8]Então é mais vantagens deixar a logica no banco?
quais seria sua desv e vant?[/quote]
Isto depende da infra-estrutura do seu servidor, bem como do desempenho de sua aplicação, e porque não dizer também, depende do tamanho do seu banco (quantidade de tabelas).
Se voce possui um servidor em duas camadas (Cliente - Servidor), possa ser que fazer uma pequena lógica no banco, tal como validações de dados em triggers para acelerar o processamento da aplicação, seja uma pequena vantagem, porém voce está trocando seis por meia dúzia, tirando o processamento da aplicação e em contra partida aplicando-a no banco, ora se o o computador é o mesmo, o processador é o mesmo, então não há vantagem nenhuma
Contudo a coisa muda de figura se for tres camadas (Cliente - Intermediário - Provedor), onde as regras de negócio deve sempre estar na camada intermediária, ou seja, na aplicação, deixando apenas o provedor encarregado apenas de armazenar os dados, pois não haveria sentido voce colocar a maior parte do processamento na aplicação e um pouco no provedor, se essas camadas foram separadas exatamento para dar celeridade no processamento, portanto comprometer o processamento em ambos, seria um erro primário.
Quando disse que depende também do tamanho do seu banco (quantidade de tabelas) isto implica em dizer quantidade de dados que são trafegados na rede, se a sua rede for intranet onde a conexão é lenta devida a distância entre o Servidor e o Cliente, causando interrupção constante na transação, então a melhor opção é deixar o processamento na aplicação, só para garantir a integridade física dos dados, principalmente se esta transação é feita em pacotes (datasets), que diga-se de passagem, já está obsoleto.
A melhor forma mesmo é voce deixar o processamento na aplicação, isto pois há também um outro fator que devemos levar em consideração: Digamos que a sua empresa fez toda a aplicação em Delphi Net, ou Visual Studio Net, armazenando dados em banco do tipo Firebird ou SQL Server, ai de uma hora pra outra resolve mudar de Sistema Operacional de Windows pra Linux, e mudar o banco para Oracle, e aplicação para Java, por ser multiplataforma, o que voce faria se o se contivesse algum processamento no banco :?: :?: :?:
Diante do acima exposto, a melhor forma é fazer a lógica do processamento toda na aplicação.
Um abraço.