![]() |
Nicht genügend Schlüsselinformationen zum aktualisieren
Hi Leute,
ich versuche eine Datenbankabfrage zu gestalten. Benutzte Komponenten: TAdoQuery, DataSource,DBGrid,DBNavigator. Es ist auch alles richtig miteinander verbunden! Der SQl - Befehl ist auch eingetragen. Daten werden einwandfrei angezeigt. Klicke ich jedoch auf dem Navigator auf aktualisieren(nbRefresh), so wird eine EOleException ausgelöst "Nicht genügend Schlüsselinformationen zum aktualisieren". Auch bei Änderungen in dem DBGrid und dem darauf wieder folgenden neuen Aufruf kommt es zu Problemen, z.B. die Daten sind zwar in der DB aktualisiert, werden aber nicht im DBGrid aktualisiert angezeigt. Was tun? |
Hallo steppo,
poste doch mal dn entsprechenden SQL Text. Welche Felder sind in der zugrunde liegenden Tabelle als Schluesselfelder definiert? |
der sql - text ist eingetragen in der adoquery.sql und fragt die gesamte db ab."select * from Tabellenname". nach diesem aufruf werden elf spalten a drei zeilen im dbgrid ausgegeben. das ist der gesamte inhalt der db.
|
Hallo Steppo 8)
Die Frage hier wäre z.B. ob Du Primärschlüssel verwendest (empfohlen) und ob Du auch in Deiner SQL- Anweisung eine ORDER BY Klausel verwendest... (falls Ja dann lass diese Weg und probiere ob es klappt)... ich vermute jedoch, dass Deine TDataSet keine Eindeutige Datensätze liefert... also quasi... dass Du mehrere exakt gleiche Datensätze hast...(ist nur Vermutung) Gruß Paul Jr. P.S. Natürlich die Eigenschft RequestLive Deiner TADOQuery MUß = TRUE sein... |
RequestLive? Was ist das? Wo finde ich das? In den Eigenschaften des Objektinspectors gibt es diese Eigenschaft nicht.
|
Hallo steppo,
bei Problemen mit Ado lohnt sich auf jeden Fall ein Besuch bei ![]() und Einsatz der Komponente TBetterAdoDataset statt der Borlandkomponenten. Die Komponente ist Freeware. Die Programmierung könnte sonst recht aufreibend werden. Gruß Wolfgang [edit=Daniel B]Doppel-Post gelöscht. Bitte nur einmal auf Absenden klicken, das ist heute schon das zwiete mal. :warn: MfG Daniel B.[/edit] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz