Ir para conteúdo
Fórum Script Brasil
  • 0

Manipulação de Strings no Firebird


Duduh_Capixaba

Pergunta

Olá pessoal!

Procurei bastante na internet sobre funções de manipulação de strings no Firebird,

mas só consegui encontrar procedures feitas por terceiros. Eu gostaria de trabalhar

com comandos nativos do Firebird (versão 1.5). Eis minha questão:

Tenho em minha base de dados uma tabela de clientes, e dentro dela um campo

CNPJ_CPF. Nesse campo, possuo lançamentos de dados de várias formas, exemplos:

CPF: 000.111.222-33, 000111222-33, 00011122233

CNPJ: 00.111.222/3333-44, 00111222/3333-44, 001112223333-44, 00111222333344

Agora entra a questão. Eu gostaria de identificar o que é CPF e o que é CNPJ, para jogar

para o meu novo campo NAT_JURIDICA um valor que identifique se o cliente é Pessoa

Física ou Jurídica. Pensei em extrair apenas os números do campo CNPJ_CPF e fazer a

seguinte comparação:

SE TOTAL STRING DE CNPJ_CPF = 11 então CPF (NAT_JURIDICA = F)

SE TOTAL STRING DE CNPJ_CPF = 14 então CNPJ (NAT_JURIDICA = J)

Sei fazer isso pelo Delphi, já está até funcionando. Mas o problema é que eu tive que fazer

um loop, lendo registro por registro. E numa base de dados com muitos registros, fica um

pouco demorado de fazer esse processo.

Sempre faço essas atualizações na base via SQL, mas me deparei com o problema de o meu

campo CNPJ_CPF aceitar qualquer tipo de caracter, e não conheço uma função do Firebird que

me permita excluir caracteres de uma string.

Vou tentar resolver de outras formas enquanto aguardo a ajuda de um colega.

Abraço a todos

Editado por Duduh_Capixaba
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Só passando pra dizer que encontrei uma UDF (tbudf) com muitas funções interessantes, inclusive,

a que parcialmente resolveu meu problema. Consegui o que eu queria, mas meu chefe não gostou

muito da idéia de ter que atualizar as bases de dados de todos os clientes =\ e preferiu a ferramenta

que desenvolvi no Delphi, que lê registro por registro.

Aceito outras sugestões.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,4k
    • Posts
      652,1k
×
×
  • Criar Novo...