Esta dica é uma dificuldade que encontrei ao utilizar Oracle e PL/SQLAo montar um script em PL/SQL onde colocava o conteudo de uma campo tipo LONG em um cursor me retornava o seguinte erro: ORA-06502: PL/SQL: numeric or value error
Este erro é aparentemente relacionado a algum campo numerico, mas em se tratando de campo tipo LONG o PL/SQL tem uma restrição ao tamanho.
Solução:
Para solucionar esse problema deve se utilizar uma linguagem de 3º geração que suporte textos muito grande.
Solução em VB:
No visual basic devemos utilizar o ADODB para fazer um select ou manipular o dado.
O exemplo abaixo mostra como incluir um texto grande em uma variavel do tipo LONG em base de dados Oracle
sSql = “Select Campo_texto from Tabela where codigo = 1″
Set rs = New ADODB.Recordset
‘Abre o recordset
rsOpen sSql, conn, adOpenStatic, adLockPessimistic
‘Começa a transação
conn.BeginTrans
‘Atualiza o campo com o texto grande rs.Fields(”MDLT_DES_TXT”).AppendChunk (sLong)
‘Atualiza o campo na base
rs.Update
‘Commit na transação
conn.CommitTrans
‘Fecha o recordset
rs.Close
| University Update - Visual Basic - Erro do Oracle utilizando campo Long e PL/SQL
Thursday, 09 de August de 2007 |
|
[...] Contact the Webmaster Link to Article visual basic Erro do Oracle utilizando campo Long e PL/SQL » Posted at PontoXP - [...]
|