[firebase-br] Função DIGITS(), alguma maneira de contornar sua ausencia?

Fabio Nascimento fhpnascimento em gmail.com
Ter Nov 8 16:21:43 -03 2016


Eu uso essa:

SET TERM ^ ;

CREATE OR ALTER PROCEDURE SOMENTE_NUMEROS (
    texto d_varchar_1000)
returns (
    retorno d_varchar_1000)
as
declare variable ch char(1);
begin
  Retorno = '';
  while (Texto is not null and Texto <> '') do
  begin
    Ch = substring(Texto from 1 for 1);
    if (Ch >= '0' and Ch <= '9') then
      Retorno = Retorno || Ch;
    Texto = substring(Texto from 2 for 100);
  end
  if (retorno = '') then
     retorno = null;
  suspend;
end^

SET TERM ; ^

GRANT EXECUTE ON PROCEDURE SOMENTE_NUMEROS TO SYSDBA;



Mais detalhes sobre a lista de discussão lista