TSQLQuery No append insert query specified and failed ...

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
FXMaveric
Beiträge: 19
Registriert: Mi 7. Jan 2009, 08:59

TSQLQuery No append insert query specified and failed ...

Beitrag von FXMaveric »

Hallo,

ich habe offensichtlich ein Verständnisproblem bezüglich der Funktion der TSQLQuery.

Ich habe eine funktionierende MySQL-Verbindung und eine TSQLQuery welche die Daten einer Tabelle mittels "Select * from HDD" abruft.
ParseSQL := True;

Wenn ich nun einen Datensatz mittels Append, Post und ApplyChanges anhänden will kommt die Meldung:
No insert query specified and failed to generate one (No fields found for insert- or update-statement found)

Was ich versucht habe:
SQL mit Where: "Select * from HDD where 1"
SQL mit Feldnamen statt "*" -> "select feld1, feld2,... from HDD"
Alle Modes unter UpdateMode

Leider alles ohne Erfolg.

M.E. sollte er die insert, update -Anweisungen selbst erstellen können.
Da die DB noch in Bearbeitung, möchte ich nicht ständig für jede Änderung alle SQL-Anweisungen anfassen müssen.

Hat jemand eine Idee was hier falsch läuft?

FPC 2.6.2
Lazarus SVN von heute. (1.5)
Ubuntu 14.04 i386
Ubuntu 14.04.3 LTS

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: TSQLQuery No append insert query specified and failed ..

Beitrag von Michl »

Lege doch mal ein TDBGrid auf dein Formular und ein TDBNavigator und verlinke beide mit der gleichen DataSource deiner TSQLQuery. Geht dann das Einfügen per Navigator, also ohne eigenen Code?!

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

FXMaveric
Beiträge: 19
Registriert: Mi 7. Jan 2009, 08:59

Re: TSQLQuery No append insert query specified and failed ..

Beitrag von FXMaveric »

Hallo,

ich habe das Problem gelöst.
Er macht diese Meldung anscheinden auch wenn der Programmierer doof ist ;-)
Es war das Resultat leer beschriebender Feldnamen.

Es ist eine Konsolenanwendung ohne Fenster, daher gibt es leider kein Form.

Trotzdem Danke und Gruß
FX

Antworten