Pessoal, bom dia.
Estou com uma dúvida, já fiz uma procedure assim mais faz muito e não estou me lembrando.
É o seguinte:
Fiz uma procedure de importação que está funcionando certo, mas tem um porém, exemplo:
Tenho um determinado campo, onde comparo no arquivo de importação:
COLUNA "CWP001" até ai tudo bem, mas não é um campo fixo varia de acordo que digitam.
Estou tendo problema nesta hora, se o campo vem com (6) dígitos dá certo , se vir com (11) 'WPP-200-01A' dá erro.
Veja abaixo:
v_CAMPO_1 := substr( vLineBuf, 1,6);
v_CAMPO_2 := substr( vLineBuf, 8,20);
Como faço para pegar independente da posição que esteja,
o arquivo vem assim:
( CWP001,01/01/2008 )
Muito obrigada.
Developer Oracle.
Problema na "String" preciso da ajuda de vocês ur
- fsitja
- Rank: OraSauro
- Mensagens: 611
- Registrado em: Seg, 19 Jan 2009 4:29 pm
- Localização: Gaúcho no Rio de Janeiro - RJ
"The scars exist to remind us that the past was real"
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html
OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html
OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist
Qual a mensagem de erro? (ORA-?????)
-
- Rank: Estagiário Pleno
- Mensagens: 6
- Registrado em: Sex, 09 Jan 2009 6:05 pm
- Localização: são paulo
Na verdade não é bem um erro...somente quero saber como faço para pegar a string indepedente do tamanho antes da ',' , porque no arquivo difere:
Veja exemplo:
Tenho um arquivo .csv:
WPP-200-01A,22/01/2008
CWP002,10/01/2007
CWP003,16/02/2008
Então na hora da importação joga certo no forms, somente a primeira linha:
Que é:
WPP-200-01A 22/01/2008 - correto
Na segunda em diante a linha vem errado assim:
CWP002,10/01 /2007
CWP003,16/02 /2008
Quero saber como faço para importar certo , preciso pegar a string sempre antes ‘,’, entendeu?
Grata.
Veja exemplo:
Tenho um arquivo .csv:
WPP-200-01A,22/01/2008
CWP002,10/01/2007
CWP003,16/02/2008
Então na hora da importação joga certo no forms, somente a primeira linha:
Que é:
WPP-200-01A 22/01/2008 - correto
Na segunda em diante a linha vem errado assim:
CWP002,10/01 /2007
CWP003,16/02 /2008
Quero saber como faço para importar certo , preciso pegar a string sempre antes ‘,’, entendeu?
Grata.
-
- Rank: Programador Júnior
- Mensagens: 17
- Registrado em: Seg, 08 Set 2008 7:35 pm
- Localização: Ribeirão Preto - SP
Marcelo Nunes
Analista/Desenvolvedor Oracle
Analista/Desenvolvedor Oracle
O comando abaixo irá pegar toda a parte da string até que seja encontrada a primeira vírgula :
Caso não seja encontrada nenhuma vírgula na string o retorno deste comando será nulo!
substr(SUA_STRING, 1, instr(SUA_STRING, ',') - 1)
-
- Moderador
- Mensagens: 367
- Registrado em: Ter, 25 Mar 2008 3:41 pm
- Localização: Salvador - BA
Rodrigo Valentim
Analista de Sistemas
Oracle Developer
Campanha: Faça uma pesquisa antes de perguntar!!!
Analista de Sistemas
Oracle Developer
Campanha: Faça uma pesquisa antes de perguntar!!!
Tenta isso.
SQL> SELECT substr('WPP-200-01A,22/01/2008',0,instr('WPP-200-01A,22/01/2008',',')-1),
2 substr('WPP-200-01A,22/01/2008',instr('WPP-200-01A,22/01/2008',',')+1,length('WPP-200-01A,22/01/2008'))
3 FROM dual
4 ;
SUBSTR('WPP-200-01A,22/01/2008 SUBSTR('WPP-200-01A,22/01/2008
------------------------------ ------------------------------
WPP-200-01A 22/01/2008
SQL> SELECT substr('CWP003,16/02/2008',0,instr('CWP003,16/02/2008',',')-1),
2 substr('CWP003,16/02/2008',instr('CWP003,16/02/2008',',')+1,length('CWP003,16/02/2008'))
3 FROM dual
4 ;
SUBSTR('CWP003,16/02/2008',0,I SUBSTR('CWP003,16/02/2008',INS
------------------------------ ------------------------------
CWP003 16/02/2008
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 10 visitantes