Qual a diferença

6 respostas
edymrex

Galera qual a diferença de function para store procedure em banco de dados ?

6 Respostas

T

Depende do seu banco. Em alguns bancos, as functions podem ser usadas em queries, enquanto que as procedures só podem ser usadas por outras procedures.

edymrex

Cara eu achava que a diferença era que procedure não retorna valor e function sim, eu tava viajando aqui.
No caso do SqlServer e Oracle o conceito é esse mesmo que você falow ?

D

Puppets:
Cara eu achava que a diferença era que procedure não retorna valor e function sim, eu tava viajando aqui.
No caso do SqlServer e Oracle o conceito é esse mesmo que você falow ?

Mas vc está certo. Function retorna valor e procedure não.

tnaires

No caso de banco de dados, não. Em vários bancos de dados, tanto existem procedures que retornam valores quanto funções que não retornam.
Mas em algumas linguagens de programação ( como Pascal ), esse conceito é verdade.

D

No caso de banco de dados, não. Em vários bancos de dados, tanto existem procedures que retornam valores quanto funções que não retornam.
Mas em algumas linguagens de programação ( como Pascal ), esse conceito é verdade.
A idéia seria essa em banco de dados, porém, cada um implementa como quer. Mas functions são mais complexas e podem executar muitas coisas e retornar seus resultados.Isso é obrigatório. Procedures não possuem retornos e sim saídas, o que é opcional.
As procedures se comportam de forma diferente, quando possuem entrada e saída. Mas elas realmente não retornam, como functions, e sim possuem saídas. Não conheço todos os bancos de dados, porém, a regra é básica, podemos usar functions em meio a queries, embebidas na consulta e procedures já não se comportam da mesma forma.
Acho que deu pra explicar melhor agora, não é?

tnaires

djemacao:
A idéia seria essa em banco de dados, porém, cada um implementa como quer. Mas functions são mais complexas e podem executar muitas coisas e retornar seus resultados.Isso é obrigatório. Procedures não possuem retornos e sim saídas, o que é opcional.
As procedures se comportam de forma diferente, quando possuem entrada e saída. Mas elas realmente não retornam, como functions, e sim possuem saídas. Não conheço todos os bancos de dados, porém, a regra é básica, podemos usar functions em meio a queries, embebidas na consulta e procedures já não se comportam da mesma forma.
Acho que deu pra explicar melhor agora, não é?

Exato. Eu questionei sua afirmação porque no Firebird, por exemplo, procedures são bem parecidas com as functions que conhecemos em outros bancos de dados. Inclusive, é possível efetuar selects diretamente das procedures.

Criado 9 de julho de 2008
Ultima resposta 9 de jul. de 2008
Respostas 6
Participantes 4