Zitat von
hsbc:
Im Feldeditor sind ALLE Felder eingetragen.
Willst du damit sagen, dass du alle Felder der Tabelle eingetragen hast?
Dann ist klar, woher der Fehler kommt! In der Abfrage müssen dann auch alle Felder zurückgeliefert werden, die dort eingetragen sind.
Zitat:
SELECT * FROM KUNDEN - funktioniert, liefert alle Felder einwandfrei zurück
SELECT KUNDENNR FROM KUNDEN - Fehlermeldung: Das Feld (nächstes Feld) wurde nicht gefunden - Ich will ja nur die KundenNr
SELECT MAX(KUNDENNR) AS MaxNr FROM KUNDEN - Fehlermeldung: Das Feld KUNDENNR wurde nicht gefunden.
SELECT * FROM KUNDEN WHERE KUNDENNR = 12345 - funktioniert auch
1. Klar, alle Felder werden ja auch zurückgeliefert.
2. In den Fields des Datasets ist das nächste Feld eingetragen, wird aber von deiner Datenmenge nicht zurückgeliefert.
3. Kundennummer ist das Field des Datasets und wird nicht gefunden, weil es ja nicht von der Datenmenge geliefert wird (dort wird ja nur das "Feld" MaxNr geliefert.
4. Klar, wie bei 1...
Also: Deine Fehler sind keine Datenbank- bzw
SQL-Fehler, sondern Delphi-Fehler!
Lösung: Nur die Felder in dem DataSet (bzw der davon abgeleiteten Kompo, also deiner TZQuery) eintragen, die auch tatsächlich zurückgeliefert werden.
MfG
Stevie