Thread: c++ mfc: problem with bytea
Hi, i've got a problem with RFX_Binary. The maxLength is set to 10000000, in the RFX_Binary-Cmd and in the ODBC-Options for MaxLongVarchar. If i try to recieve data, they are truncated - if i try to AddNew() and Update(), an assertion fails... corresponding TRACE is: TRACE(traceDatabase, 0, "Error: field address (column %u) has changed!\n", nField); (dbrfx.cpp, void AFXAPI AfxLoadField(CRecordset& rs, UINT nField, void* pvField, LONG_PTR* plLength) The type of the RFX-Variable is CByteArray (visual studio chose this, so i think it should be correct..). I also tried to use a bugfixed version of RFX_Binary (google for RFXBINFX.EXE), but this didn't work either. However, i'd like to stick to Postgresql... If somebody needs the postgresql log... its available at http://manofhonor.de/mylog_2308.zip It'd be GREAT if you solve this.... Thanks for help, Matthias Weinert
Well, i tried to get more pieces of information... i found the option odbc dll trace, i hope it will help you. however, it seemed to be much more detailed than the last log (and it is exactly ONE fetching error, last log seemed to have several..). And sorry, i forgot: I'm using PostgreSQL 8.0.3 with the newest ODBC driver (08.00.01.02) on WinXP Prof (!). The DLL Trace is available at http://manofhonor.de/SQL.LOG Thx for help! Matthias Weinert wrote: >Hi, > >i've got a problem with RFX_Binary. The maxLength is set to 10000000, in >the RFX_Binary-Cmd and in the ODBC-Options for MaxLongVarchar. > >If i try to recieve data, they are truncated - if i try to AddNew() and >Update(), an assertion fails... corresponding TRACE is: >TRACE(traceDatabase, 0, "Error: field address (column %u) has >changed!\n", nField); >(dbrfx.cpp, void AFXAPI AfxLoadField(CRecordset& rs, UINT nField, void* >pvField, LONG_PTR* plLength) > >The type of the RFX-Variable is CByteArray (visual studio chose this, so >i think it should be correct..). > >I also tried to use a bugfixed version of RFX_Binary (google for >RFXBINFX.EXE), but this didn't work either. >However, i'd like to stick to Postgresql... > >If somebody needs the postgresql log... its available at >http://manofhonor.de/mylog_2308.zip > >It'd be GREAT if you solve this.... > > >Thanks for help, >Matthias Weinert > > > > > >---------------------------(end of broadcast)--------------------------- >TIP 5: don't forget to increase your free space map settings > > > >
Ok, i complete rewrote the 3 bugged classes... now it works. i don't have a clue what went wrong, but who cares ;) Thx for the answers refering to my next question that'll come for sure :-] Matthias Weinert Matthias Weinert wrote: >Hi, > >i've got a problem with RFX_Binary. The maxLength is set to 10000000, in >the RFX_Binary-Cmd and in the ODBC-Options for MaxLongVarchar. > >If i try to recieve data, they are truncated - if i try to AddNew() and >Update(), an assertion fails... corresponding TRACE is: >TRACE(traceDatabase, 0, "Error: field address (column %u) has >changed!\n", nField); >(dbrfx.cpp, void AFXAPI AfxLoadField(CRecordset& rs, UINT nField, void* >pvField, LONG_PTR* plLength) > >The type of the RFX-Variable is CByteArray (visual studio chose this, so >i think it should be correct..). > >I also tried to use a bugfixed version of RFX_Binary (google for >RFXBINFX.EXE), but this didn't work either. >However, i'd like to stick to Postgresql... > >If somebody needs the postgresql log... its available at >http://manofhonor.de/mylog_2308.zip > >It'd be GREAT if you solve this.... > > >Thanks for help, >Matthias Weinert > > > > > >---------------------------(end of broadcast)--------------------------- >TIP 5: don't forget to increase your free space map settings > > > >