tads
#1
Bom dia, tudo bom?
Eu tenho um xml que contém a seguinte query:
<sql>
<select>SELECT id, nome, fone from cliente
where nome like upper(% ? %)
</select>
</sql>
neste caso, eu quero fazer uma consulta onde digito apenas
parte do nome do cliente (ex.: Silva).
Acontece que retorna uma Exception:
ORA-00911: invalid character
Como vcs podem ver, estou usando oracle.
Se eu tirar o caracter %
daí funciona, mas eu preciso desta maneira…
tem algum jeito de se fazer isso???
Estou utilizando PreparedStatement.
obrigado,
Abraço
Adiciona o caracter % na sua própria string que vc envia para consulta
tads
#3
Legal… agora sim deu certo…
valew
abraço
[quote=“tads”]Bom dia, tudo bom?
Eu tenho um xml que contém a seguinte query:
<sql>
<select>SELECT id, nome, fone from cliente
where nome like upper(% ? %)
</select>
</sql>
neste caso, eu quero fazer uma consulta onde digito apenas
parte do nome do cliente (ex.: Silva).
Acontece que retorna uma Exception:
ORA-00911: invalid character
Como vcs podem ver, estou usando oracle.
Se eu tirar o caracter %
daí funciona, mas eu preciso desta maneira…
tem algum jeito de se fazer isso???
Estou utilizando PreparedStatement.
obrigado,
Abraço[/quote]
Vc também poderia usar um scape do XML. Exemplo:
scape no xml para & (E comercial) = &
scape no xml para à (E comercial) = …
formula para scape: &# + codigo ASCII do caracter
Isso evitaria que sua string fosse enviada com %MinhaString%…
Valeu?
tads
#5
Eu tentei executar depois de colocar estes scapes no xml, mas
qdo vou abrir o xml, ele dá o seguinte erro:
SAXParseException
Illegal decimal character reference.
Parece que não está aceitando…
falow,
abraço,
valew pela atenção
[quote=“tads”]Eu tentei executar depois de colocar estes scapes no xml, mas
qdo vou abrir o xml, ele dá o seguinte erro:
SAXParseException
Illegal decimal character reference.
Parece que não está aceitando…
falow,
abraço,
valew pela atenção[/quote]
Vc fez deste modo?
<sql>
<select>SELECT id, nome, fone from cliente
where nome like upper(% ? %)
</select>
</sql>
tads
#7
Então carinha,
eu fiz exatamente deste jeito:
% ? %
mas deu o erro que ti falei anteriormente…
valew,
[]
tads
#8
OPs. saiu errado na exibição…
Eu coloquei da mesma forma que vc no xml.
<?xml version=“1.0” encoding=“UTF-8”?>
<sql>
<select>SELECT seila
FROM tabela
<whereNome>
WHERE nome LIKE UPPER(% ? %)
</whereNome>
</select>
</sql>
O que será que acontece???