We are migrating a project from SqlWindows 3.0.0 to Gupta TD 6.2 an have an problem with LONG RAW update in an oracle database.
If an update statement contains an sub-select in WHERE clause the oracle error ORA-01461 (can bind a LONG value only for insert into a LONG column) occurs.
Example:
In database the column LRT_LONG_RAW_COL is defined as LONG RAW.
Code: Select all
Set l_sUpdate = "update LONGRAWTEST set LRT_LONG_RAW_COL = :l_lsLongString
where LRT_ID = 1
and LRT_VER=(select max(LRT_VER) from LONGRAWTEST where LRT_ID= 1 )"
!
! prepare sql statement
Call SqlPrepare( l_hSql1, l_sUpdate )
Call SqlSetLongBindDatatype( 1, 23 )
! On Execute ORA-01461 occures
Call SqlExecute( l_hSql1 )
Environment:
Windows 7
Team Developer 6.2.2 (42038) SP2
Oracle 11g (11.2.0.2.0)
Thank you,
Peter