Pular para o conteúdo

Fóruns SQL e PL/SQL Comando Select Comando Select

#77951
Anônimo

    Fala brother, blz?

    Então cara, quanto à parte da string, vai abaixo uma dica…
    Quanto à parte numérica… com este exemplo você pode montar…
    Talvez não seja a melhor forma de se fazer, mas, fica como dica….

    DECLARE
    v_string VARCHAR2(10) := 'TRE12SOLL9';
    v_string_analisada VARCHAR2(30);
    v_tam NUMBER(03) := 0;
    v_conta NUMBER(03) := 0;
    BEGIN

    SELECT TRANSLATE(v_string, '1234567890', '----------')
    INTO v_string_analisada
    FROM dual;

    v_tam := LENGTH(v_string_analisada);

    FOR x IN 1..v_tam
    LOOP
    if SUBSTR(v_string_analisada,x,1) = '-'
    THEN
    v_conta := v_conta + 1;
    END IF;
    END LOOP;

    IF v_conta = 0
    THEN
    dbms_output.put_line('Ok. Só digitou letras.');
    ELSE
    dbms_output.put_line('Login inválido, encontrado(s) '||v_conta||' número(s). ');
    END IF;

    END;

    Abraços,

    Trevisolli.