Parâmetro de Entrada em Stored Procedure
Pessoal gostaria de saber como faço para passar mais de um código de cliente para dentro de uma SP (Stored Procedure) para ser usado em NOT IN de um Select como o do Exemplo abaixo:
tentei criando PARAMETRO como sendo VARCHAR mas não deu certo, alguém teria alguma dica?
Select NOME from CLIENTES where CLIENTE_ID not in (:PARAMETRO) into :CLIENTE_NOME;
tentei criando PARAMETRO como sendo VARCHAR mas não deu certo, alguém teria alguma dica?
Steve_narancic
Curtidas 0
Respostas
_rodfaria_
12/09/2005
TListaCodigos = array of integer; ... function MontaSQLIn(campo:string;lista:TListaCodigos):string; var i:integer; begin if length(lista) = 0 then exit; Result:=campo+´ not in (´; for i:=0 to length(lista)-1 do begin if i<>0 then Result:=Result+´,´; Result:=Result+inttostr(lista[i]); end; Result:=Result+´)´; end; ... sql:=´select ... where ´+MontaSQLIn(´CLIENTE_ID´,um_array_vindo_de_alguma_funcao);
Rod.
GOSTEI 0
Steve_narancic
12/09/2005
Acho que não consegui me explicar muito bem, não quero usar este select no Delphi e sim em uma Stored Procedure dentro de um GDB
GOSTEI 0
Afarias
12/09/2005
steve, *não é possível* passar parâmetros para um IN.
existem entratanto, dependendo do caso, formas diferentes de implementar algo com resultado semelhante.
T+
existem entratanto, dependendo do caso, formas diferentes de implementar algo com resultado semelhante.
T+
GOSTEI 0
Sremulador
12/09/2005
steve, *não é possível* passar parâmetros para um IN.
existem entratanto, dependendo do caso, formas diferentes de implementar algo com resultado semelhante.
quais seriam elas...
GOSTEI 0
Sremulador
12/09/2005
helpppp.......
GOSTEI 0
Emerson Nascimento
12/09/2005
monte, na SP, uma string com a instrução pronta e execute-a com EXECUTE STATEMENT
GOSTEI 0
Sremulador
12/09/2005
Amigo não funciona....
GOSTEI 0
Martins
12/09/2005
Eu tb quero saber como fazer isso, pois acredito q usar case não vem ao caso
GOSTEI 0
Thomaz_prg
12/09/2005
Amigos, usando EXECUTE STATEMENT funciona...
Dêem uma olhada no post http://forum.devmedia.com.br/viewtopic.php?t=73564
Dêem uma olhada no post http://forum.devmedia.com.br/viewtopic.php?t=73564
GOSTEI 0