Caracter especial

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
eduardo
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 56
Registrado em: Ter, 10 Jul 2007 3:24 pm
Localização: sp
Sempre há algo a aprender....

Olá a todos,

eu estou com uma dúvida e gostaria de pedir ajuda a voces:

eu tenho um campo texto que só pode ter letras ( A-Z) e números ( 0-9)

eu preciso barrar quaisquer caracteres especiais que por ventura o usuário digite ex ( *&¨%$) e também não posso deixar que ele cadastre espaço em brancos.

voces tem alguma função que faz essa veirficação?

vou procurar na internet, se eu achar posto aqui
SergioLBJr
Rank: Oracle Guru
Rank: Oracle Guru
Mensagens: 448
Registrado em: Ter, 16 Jun 2009 3:07 pm
Localização: Parobé - RS
Sérgio Luiz Bonemberger Junior
Programador Junior
Parobé RS

[]s

Tente usar a função translate, segue um exemplo

Selecionar tudo

select translate('AB$%#12','$ % #',' ') from dual
teste na sua máquina, ela vai retornar tudo o que estiver na string menos o que for '$' ou '%' ou '#'.

Você pode usala assim para buscar apenas a string correta sem as exceções.
Ou como eu penso ser melhor para você :

Selecionar tudo

select(campo_a_validar,'A B C D E F G H I J K L M N O P Q R S T U V X Z 0 1 2 3 4 5 6 7 8 9',' ') from dual
Se este select trazer algum resultado você acusa erro no campo e indica que não pode ser passado nenhum caracter especial.

Qualquer duvida poste no forum
SergioLBJr
Rank: Oracle Guru
Rank: Oracle Guru
Mensagens: 448
Registrado em: Ter, 16 Jun 2009 3:07 pm
Localização: Parobé - RS
Sérgio Luiz Bonemberger Junior
Programador Junior
Parobé RS

[]s

Passei o segundo select sem o translate, segue :

Selecionar tudo

select translate(campo_a_validar,'A B C D E F G H I J K L M N O P Q R S T U V X Z 0 1 2 3 4 5 6 7 8 9',' ') from dual
eduardo
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 56
Registrado em: Ter, 10 Jul 2007 3:24 pm
Localização: sp
Sempre há algo a aprender....

valeu pessoal, vou testar
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 13 visitantes