[firebase-br] Validação de Telefone

Sandro Souza escovadordebits em gmail.com
Qua Abr 18 12:36:03 -03 2012


Bom dia/tarde Reinaldo.

Acredito que um pequena stored procedure resolva o seu caso.

Por exemplo, se você criar a seguinte SP:

Set term # ;

Create or replace procedure so_digitos(
  Texto varchar(200)
) returns (
  Resultado varchar(200)
) as
Declare variable indice integer;
Declare variable carac char(1);
Begin
  If (Texto is null) then
    Resultado = Null;
  Else
  Begin
    Resultado = "";
    Indice = 1;
    While (Indice < Char_Length(Texto)) do
    Begin
      Carac = Substring(Texto from Indice for 1);
      If ((Carac >= '0') and (Carac <= '9')) then
        Resultado = Resultado || Carac;
    End -- While
  End -- If
  Suspend;
End#

Set term ; #

Agora fica mais fácil:

Select
  *
>From (
Select
  Listel,
  (select resultado from so_digitos(Listel))Digitos
from
  Telefones) x
where
  (Listel is not null)and
  (Char_length(Listel) > Char_length(Digitos));

Espero ter ajudado mais que atrapalhado. :D
Em 18/04/2012 10:32, "Reinaldo" <diasmartins em gmail.com> escreveu:

>
>
>
>
> Bom dia,
>
> Existe alguma forma de eu fazer um select para descobrir se um
> determinado campo de uma determinada tabela possui algum caracterer que
> não seja número. (O Campo é um varchar(16))
>
> Teoricamente o campo nao deveria aceitar números, porém como não foi
> feito tratamento na época podem existir alguns registros com caracteres
> que nao seja número. '-' ou ' '  por exemplo.
>
> Existe maneira de eu lista esses registros?
>
> A Tabela é TELEFONES e o Campo é LISTEL.
>
> Att.
>
> Reinaldo
>
>
>
> ______________________________**________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/**artigo.php?id=1107<http://www.firebase.com.br/fb/artigo.php?id=1107>
> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<http://firebase.com.br/pesquisa>
>



Mais detalhes sobre a lista de discussão lista