| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 13:52:56
|
Puppets
Virtual Machine Man
![[Avatar]](/images/avatar/6c7a107981f9c2a0ed55efce297bd1e2.png)
Membro desde: 12/12/2006 14:14:55
Mensagens: 508
Localização: Porto Alegre
Offline
|
Galera qual a diferença de function para store procedure em banco de dados ?
|
Nunca desista antes de conseguir. |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 13:55:39
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
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.
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 14:01:38
|
Puppets
Virtual Machine Man
![[Avatar]](/images/avatar/6c7a107981f9c2a0ed55efce297bd1e2.png)
Membro desde: 12/12/2006 14:14:55
Mensagens: 508
Localização: Porto Alegre
Offline
|
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 ?
|
Nunca desista antes de conseguir. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 14:05:52
|
djemacao
GUJ Master
Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline
|
Puppets wrote: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.
|
"Quanto mais aprendo mais tenho consciência que nada sei." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 14:14:19
|
tnaires
GUJ Master
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 1678
Localização: Porto Alegre/RS - Natal/RN
Offline
|
djemacao wrote:Mas vc está certo. Function retorna valor e procedure não.
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.
|
Tarso Nunes Aires
Blog - http://cabritin.wordpress.com/
Delicious - http://delicious.com/tnaires
Twitter - @tnaires
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 17:36:18
|
djemacao
GUJ Master
Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline
|
tnaires wrote:
djemacao wrote:Mas vc está certo. Function retorna valor e procedure não.
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 é?
|
"Quanto mais aprendo mais tenho consciência que nada sei." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/07/2008 23:32:31
|
tnaires
GUJ Master
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 1678
Localização: Porto Alegre/RS - Natal/RN
Offline
|
djemacao wrote: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.
|
Tarso Nunes Aires
Blog - http://cabritin.wordpress.com/
Delicious - http://delicious.com/tnaires
Twitter - @tnaires
 |
|
|
 |
|
|