Página 1 de 1

Campo Tipo LONG do Oracle

Enviado: 05 Dez 2019 08:47
por edutek
Bom Dia

Estou lendo uma tabela de pedidos de outros sistema e ele tem um campo TIPO LONG onde grava as anotações do pedido, quando uso o SQLRDD

cSql2 := "SELECT d.dia_idlanc, d.dia_idanot, pdc_observ as observ , p.pdc_numped as numero "
cSql2 += "FROM f_pedcompra P "
cSql2 += "INNER JOIN f_titulos t ON p.pdc_numped = t.tit_numped "
cSql2 += "INNER JOIN c_diario d ON t.tit_idtit = d.dia_idlanc "
cSql2 += "WHERE pdc_dtemis >= To_Date('"+ mDataTimeInic +"', 'dd/mm/yyyy HH24:mi:ss') "
executa_sql_puro(cSql2,"dc_diario",mPredbf10)
dbselectarea("dc_diario")
xbrowse("dc_diario")

a Coluna "observ" que é campo Tipo LONG vem com o valor "0.0000" em todas as colunas, vem como se fosse numérico, e não traz os dados de campo.



aguém sabe de alguma forma de resolver isso

Campo Tipo LONG do Oracle

Enviado: 05 Dez 2019 17:37
por JoséQuintas
Que eu saiba, tipo LONG é inteiro.
Talvez seja interessante começar a pensar em substituir a SQLRDD.
Como já usa comandos SQL, talvez a troca seja mais suave do que se fosse de DBF.

Campo Tipo LONG do Oracle

Enviado: 05 Dez 2019 19:06
por alxsts
Olá!

LONG is an Oracle data type for storing character data of variable length up to 2 Gigabytes in length (bigger version of the VARCHAR2 datatype). Note that a table can only have one LONG column.

No SELECT, tente converter para um outro tipo de dado, conforme mostrado no link acima. O tipo de dado LONG é obsoleto no Oracle, desde a versão 8i, ainda segundo o link acima.