PL/SQL: numeric or value error - caracter especial

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
Moloukos
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 54
Registrado em: Qui, 18 Set 2008 10:22 pm
Localização: São Paulo - SP
Moloukos Rox

Boa tarde pessoal.

Tenho uma informação gravada no banco de dados com os dados do telefone. Ela esta sendo gravada assim via integração dessa forma:

+1 866-994-3157(预订部)/ 1-407-9960900(前台)

Em determinado momento eu pego esse valor e jogo dentro de um REC e da erro - PL/SQL: numeric or value error

A query chamada tem um substring e depois joga no rec, onde da o erro

Selecionar tudo

select SUBSTR(FORNEC.FONE, 0, 19) AS FORNEC_FONE FROM TABLEX
Alguém tem ideia de como posso tratar isso? Obrigado
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Acho que o problema não é a query e sim onde está sendo gravado.
Esse REC que você mencionou está configurado com que tamanho ?

Veja, por essa string ter caracteres não ASCII, ela ocupa mais bytes que o normal.
2023-12-28_17-57.png
Moloukos
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 54
Registrado em: Qui, 18 Set 2008 10:22 pm
Localização: São Paulo - SP
Moloukos Rox

Bom dia.

Acabei resolvendo com REGEXP_REPLACE

Antes estava assim

Selecionar tudo

select SUBSTR(FORNEC.FONE, 0, 19) AS FORNEC_FONE FROM TABLEX
e o resultado era +1 866-994-3157(预订部

Fiz esse tratamento para tirar as letras e manter alguns caracteres que são necessários

Selecionar tudo

select REGEXP_REPLACE(SUBSTR(FORNEC.FONE, 0, 19), '[^0-9+() -/#]', '') AS FORNEC_FONE FROM TABLEX
e o resultado foi +1 866-994-3157()/

Obrigado
Responder
  • Informação
  • Quem está online

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