Om met Delphi 8 te leren werken ben ik begonnen een (windows forms) database applicatie (met een Interbase DB) in elkaar te draaien. Hierbij maak ik gebruik van de Borland data provider. Ik kom nu echter het volgende probleem tegen: bij het wegschrijven van een gewijzigde tabel krijg ik elke tweede keer dat ik 'dataadapter.update' uitvoer een exceptie ('execute failed. unassigned code').
Om alle zaken buiten het vullen/wegschrijven van de gegevens uit te sluiten heb ik een kleine testapplicatie gemaakt (zie bijgevoegde zipfile) die niets anders doet dan op een druk van de 'load' knop de tabel inlezen, tonen in een grid, en na 'save' de boel wegschrijven. Helaas geeft ook deze applicatie elke tweede 'update' dezelfde foutmelding.
Dus:
- Druk op 'load' (dataadapter.fill)
- Maak een wijziging in de tabel (m.b.v. een datagrid)
- Druk op 'save' (dataadapter.update), dit gaat goed.
- Maak weer een wijziging in de tabel
- Druk op 'save', foutmelding: 'execute failed. unassigned code'.
- Druk zonder verder iets te doen weer op 'save', dit lukt nu weer zonder problemen.
..enz.
Als ik de testapplicatie opzet met SQL server of Firebird ipv Interbase heb ik dit probleem niet. Omdat ik me bijna niet kan voorstellen dat dit een fout is in de IB driver (dat zou dan tijdens de testfase van D8 wel gevonden zijn neem ik aan) zal ik wel iets fout doen waar IB gevoeliger voor is dan de andere DBMS'en of is mijn installatie van IB niet helemaal tof.. Zou iemand bijgevoegde applicatie eens kunnen uitproberen en kijken of hij/zij er dezelfde problemen mee heeft??? Bedankt!
BTW: Ik gebruik D8/Update 2 en IB 7.1 sp 2.
Bookmarks