Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi big trouble in little Query (https://www.delphipraxis.net/642-big-trouble-little-query.html)

theomega 17. Aug 2002 17:17


big trouble in little Query
 
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?

theomega 17. Aug 2002 17:25

erstens: warum tut das [code] nicht?
zweites: der Fehler besteht auch bei den einfachen Query:
Code:
form1.execquery('INSERT INTO sachbuch (sachbuchnr) VALUES (''354543435435'');');
und die Anzahl der Datensätzte ist unterscheidlich aber meistens 4 oder 3.

Daniel B 17. Aug 2002 18:05

Zitat:

Zitat von theomega
erstens: warum tut das [.code] nicht?

Beim ersten Code-Teil hat er das [/code] vergessen, smoit wussten die anderen nicht mehr wo sie anfangen und aufhören sollen. Das sind Kluge Code-Tags. :mrgreen: Habs soeben korregiert.

theomega 17. Aug 2002 20:13

Ist es denn so kompliziert?

TheSilent1 18. Aug 2002 20:25

Hallo!

Lies den Post den ich dir heute bei deinem Post mit dem Titel "Query.Open" geschrieben habe.

Gruß

TheSilent1

theomega 18. Aug 2002 21:38

habs gesehen, danke.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz