Frage zu CRecordset!
-
So kurzer Abriss: Ich habe mit dem Assistenten ne Klasse zu einer Tabelle erstellt und will nun mit den Membervariablen arbeiten.
Das auslesen klappt wunderbar
CSoftware rs(&dBase); rs.Open(); try { rs.CanUpdate(); while (!rs.IsEOF()) { //rs.Edit(); -> Das geht nicht !?! //rs.m_test = 5; //rs.Update(); rs.MoveNext(); } } catch(CDBException* pEx) { pEx->Delete(); }Mein Problem: das Edit geht nicht. Das Recordset ist im Zustand, dass es sich nicht updaten kann(CanUpdate liefert 0)
So ich versteh nur nicht warum ????
Die DB ist nicht read only geöffnet. UPDATEs funktionieren per ExecuteSQL. Nur die von Recordset abgeleuitete Klasse will nicht.Weis wer woran das liegt??
-
Kommt eine Fehlermeldung? Wenn ja welche?
-
Nein nur eine Assertion
else if (nRetCode > AFX_SQL_ERROR && nRetCode < AFX_SQL_ERROR_MAX) { VERIFY(pException->m_strError.LoadString( AFX_IDP_SQL_FIRST+(nRetCode-AFX_SQL_ERROR))); // <- hier TRACE(traceDatabase, 0, _T("%s\n"), pException->m_strError); }An dieser Stelle und wie gesagt CanUpdate steht von start weg auf 0 ??????? Ich setze doch nirgendwo Readonly. Irgendwo muss der das aber machen, denke ich.