O que são e para que realmente servem as STORED PROCEDURES?
Olá, muito tenho ouvido falar em STORED PROCEDURES, mas até agora não consegui descobrir qual a vantagem de se utilizar elas. O que na verdade elas fazem?
Balceiro
Curtidas 0
Melhor post
Rafael Santana
24/03/2005
caro amigo Balceiro...
as Storep Procedure são funções escritas em SQL e ficam no servidor, elas podem retornar ou nao valores para o usuário...
elas ajudam na performance de consultas ao banco de dados...
tudo o que ela faz vc pode fazer via delphi, porém, no delphi sua aplicação vai ficar mais lenta já a Stored Procedure é executada no servidor e isso torna mais ágil sua aplicação diminuindo o trafego na rede
espero ter ajudado
as Storep Procedure são funções escritas em SQL e ficam no servidor, elas podem retornar ou nao valores para o usuário...
elas ajudam na performance de consultas ao banco de dados...
tudo o que ela faz vc pode fazer via delphi, porém, no delphi sua aplicação vai ficar mais lenta já a Stored Procedure é executada no servidor e isso torna mais ágil sua aplicação diminuindo o trafego na rede
espero ter ajudado
GOSTEI 1
Mais Respostas
Mazzi
24/03/2005
Como nosso amigo disse anteriormente , se vc usa um SGDB para sua aplicacao, vc tem que ter a possibilidade de usar o SQL.
Com isso vc faria ´PROCEDIMENTOS´ que podem ser reutilizados dentro de sua aplicação, porém sem precisar programá-las dentro da IDE do seu programa, ou seja, você apenas conectaria o componente indicando o procedimento que vc programou direto no BANCO DE DADOS.
Assim vc deixa o trabalho pro servidor de banco de dados (SGDB) e ainda melhor ... pois o dia que vc quiser mudar o seu programa ou versão, seus comandos de SQL, serão totalmente portáveis em SCRIPTS em modo texto puro, adequao para qualquer BANCO.
´
é mais ou menos isso.
Espero ter ajudado,
T é +
Mazzi
Com isso vc faria ´PROCEDIMENTOS´ que podem ser reutilizados dentro de sua aplicação, porém sem precisar programá-las dentro da IDE do seu programa, ou seja, você apenas conectaria o componente indicando o procedimento que vc programou direto no BANCO DE DADOS.
Assim vc deixa o trabalho pro servidor de banco de dados (SGDB) e ainda melhor ... pois o dia que vc quiser mudar o seu programa ou versão, seus comandos de SQL, serão totalmente portáveis em SCRIPTS em modo texto puro, adequao para qualquer BANCO.
´
é mais ou menos isso.
Espero ter ajudado,
T é +
Mazzi
GOSTEI 0
Balceiro
24/03/2005
Então pelo que entendi as STORED PROCEDURES só surtem realmente efeitos quando o banco está rodando em uma máquina diferente da aplicação?
Outra coisa, se vc tem dez rquisições de consultas o banco não vai ficar sobrecarregado uma vez que estas 10 consultas estão sendo realizadas na mesma máquina?
Outra coisa, se vc tem dez rquisições de consultas o banco não vai ficar sobrecarregado uma vez que estas 10 consultas estão sendo realizadas na mesma máquina?
GOSTEI 0
Kotho
24/03/2005
A resposta a sua pergunta seria sim e não... é claro que se o banco estiver em outra máquina vai ter maior desempenho...
quanto a SP, imagine que você vai fazer uma serie de updates, selects, inserts via programação... a cada comando passado ao banco ele vai... receber o comando, checar a sintaxe, compilar, executar e retornar o resultado...
se você utilizar a SP, ele só vai executar e retornar o valor (isso para todos os selects, inserts....)... então a velocidade é muito maior...
quanto a SP, imagine que você vai fazer uma serie de updates, selects, inserts via programação... a cada comando passado ao banco ele vai... receber o comando, checar a sintaxe, compilar, executar e retornar o resultado...
se você utilizar a SP, ele só vai executar e retornar o valor (isso para todos os selects, inserts....)... então a velocidade é muito maior...
GOSTEI 0
Raserafim
24/03/2005
além da principal característica da store procedure, como já foi citado e muito bem explicado nas respostas dos colegas; na store procedure você pode utilizar alguns comandos que na consulta vc não pode, o que lhe dá uma maior liberdade e controle
GOSTEI 0
Balceiro
24/03/2005
Ok, quanto a performance entendi mas e quanto a: ´se vc tem dez rquisições de consultas o banco não vai ficar sobrecarregado uma vez que estas 10 consultas estão sendo realizadas na mesma máquina?´
GOSTEI 0
Gandalf.nho
24/03/2005
Ok, quanto a performance entendi mas e quanto a: ´se vc tem dez rquisições de consultas o banco não vai ficar sobrecarregado uma vez que estas 10 consultas estão sendo realizadas na mesma máquina?´
A performance no caso é principalmente do lado cliente da aplicação pq o grosso do processamento (SP) vai ser realizado no servidor (que tecnicamente deve ser a melhor máquina usada pelo sistema) diminuindo tb o tráfego na rede, já que menos informações serão transferidas ao banco e vice-versa.
GOSTEI 0