Help on Pro*C
Environment: WINDOWS, AIX, oracle 9i, pro*C Release 188.8.131.52.0
Objective: in Pro*C Get the full query when there is an SQLERROR
Actually, we get the statement of the PC Class with the method SQLStmtGetText()
But the statement have this form :
‘select serr_code ,serr_excp ,serr_type_mess ,mess_iden ,serr_enrg ,rowid into :b0:b1,:b2:b3,:b4:b5,:b6:b7,:b8:b9,:b10 from SERR where SERR_CODE=:b11’
then we are trying to replace :b0…. By its values using sqlstm.sqhstv (for data) and sqlstm.sqhstl (for the size of data)
but if we have an varchar which have the same size than an integer or a double then we convert it as an integer or a double.
1/ is there any structure, or method which help us to know if the data in sqhstv is a character or a number ?
2/ is there any method, like SQLStmtGetText(), which send back the full query with the :b0…replaced ?
The Pro *C development guide has an example of sqlgls function which returns the most recent sql statement executed.
Click Here to Expand Forum to Full Width