[firebase-br] Utilizar variável Varchar em IN
Carlos H. Cantu
listas em warmboot.com.br
Qui Jan 16 07:54:37 -03 2020
Da forma que vc está fazendo não é possível.
Mas vc pode usar o "for execute statement" montando o comando em
runtime. Dependendo você pode tb tentar substituir o "in" por
containing (mas não vai usar índice).
[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
CA> Olá! Seria possível utilizar uma variável do tipo varchar com "IN"
CA> dentro de uma cláusula "where"?
CA> Por ex:
CA> create or alter procedure SP_CONTAS_MOV (
CA> itiposmov varchar (50)
CA> ) returns (
CA> oid integer,
CA> odescricao varchar(50))
CA> as
CA> begin
CA> for
CA> select M.ID, M.DESCRICAO
CA> from CONTAS_MOV M
CA> where ( (:itiposmov = '') or (M.TIPOMOV in (:itiposmov)) ) -- Aqui
CA> como ficaria?
CA> into :oid, odescricao
CA> do suspend;
CA> end
CA> o campo "M.TIPOMOV" é do tipo Integer. Desta forma está dando erro de
CA> conversão de string.
Mais detalhes sobre a lista de discussão lista