Fórum Stored Procedure com LIKE . so traz inicio campo..URGENTE #37592

24/07/2003

0

Olá pessoal

Estou tentando usar uma stored procedure com like, mas ela so retorna valor qdo digito algo no inicio do text
Ex.
tenho COCA COLA cadastrado no meu banco se digitar CO ou COCA ele traz o resultado, mas se digitar COLA num vem nada como resolver isso.


ai vai minha Procedure


SET TERM ^ ;
CREATE PROCEDURE SP_ConsProd(Filt varchar(35))
Returns(Prod_codigo smallint, Prod_desc varchar(50), Prod_qtdegeral double precision, Prod_qtdemin double precision, Prod_precocusto double precision, Prod_prvenda double precision, Prod_UN varchar(2), Prod_dtent timestamp)
AS
begin
for
SELECT Prod_codigo , Prod_desc , Prod_qtdegeral , Prod_qtdemin , Prod_precocusto , Prod_prvenda , Prod_UN , Prod_dtent
from produto
where PROD_DESC like :Filt ||´¬´
INTO :Prod_codigo , :Prod_desc , :Prod_qtdegeral , :Prod_qtdemin , :Prod_precocusto , :Prod_prvenda , :Prod_UN , :Prod_dtent
do
suspend;
end ^
SET TERM ; ^


agradeço antecipadamente sua ajuda

Abraços.


Anselmo

Anselmo

Responder

Posts

24/07/2003

Afarias

|tenho COCA COLA cadastrado no meu banco se digitar CO ou COCA ele
|traz o resultado, mas se digitar COLA num vem nada como resolver isso.

isto é pq vc está usando o ´¬´ apenas no final... é como o * no comando Dir do DOS entendeu??

|where PROD_DESC like :Filt || ´¬´

ficaria:

where PROD_DESC like ´¬´ || :Filt || ´¬´

Detalhe:: Neste caso as pesquisas ficam mais lentas pois o IB não poderá usar um índice.


T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar