Einzelnen Beitrag anzeigen

Benutzerbild von theomega
theomega

Registriert seit: 18. Jun 2002
684 Beiträge
 
#1

big trouble in little Query

  Alt 17. Aug 2002, 17:17
Hallo
jetzt wird ein bischen kompliziert. Ich schreibe gerade an einer Datenbank Anwendung die auf MYSQL bassiert. Dazu habe ich die Zeos-Kompos verwendet (die hier aber eh scheinbar keiner kennt) auf dem Formular habe ich:
TMySQLDatabase (dbmain)
TMySQLTransact (trmain)
TMySQLQuery (qrmain)

jetzt habe ich eine funtion geschrieben:
Code:
function TForm1.execquery(querystring:string):integer;
begin;
memo1.Lines.Add(querystring); //Zum Debugen
qrmain.sql.Clear;
qrmain.sql.Add(querystring);
qrmain.ExecSql;
qrMain.Open;
memo1.lines.add('Resultcount: '+inttostr(qrmain.RecordCount)+'/Fieldscount: '+inttostr(qrmain.Fields.Count)); //Zum debugen
result := qrmain.RecordCount;
end;
Wenn ich jetzt irgendwelche lese-Querys ausführe, dann funzt das auch. Also z.B.
Code:
execquery('SELECT * FROM konto WHERE id='+inttostr(selected^.dbid)+';');
nur, und jetzt kommt mein Problem:

wenn ich ein Query, ausführe, dass in die Datenbank schreibt, dann enstehen die Einträge 4 mal.
also z.B.
Code:

form1.execquery('INSERT INTO belege (kontoid, betrag, Text1, Text2, typ, datum, spendenbescheinigungsnr, spendenbescheinigungdatum, sachlicherichtigkeit, rechnerischerichtigkeit)'+
                             ' VALUES ('''+unit1.selected^.dbnr+''','''+currencyedit1.Text+''', '''+memo1.lines.Text+''', '''+memo2.lines.Text+''', 1,'''+dateedit2.Text+''', '''+edit1.text+''','''+dateedit1.Text+''', '''+edit2.text+''', '''+edit3.text+''');');
in meinem Debug-Memo taucht das Query nur einmal auf, aber nachher ist der Datensatz 4 mal da.

Woran kann das liegen?
  Mit Zitat antworten Zitat