Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi speichern neuer Datensätze über Zeos in MySQL4.0 Db???? (https://www.delphipraxis.net/19445-speichern-neuer-datensaetze-ueber-zeos-mysql4-0-db.html)

betsche2k4 3. Apr 2004 14:26


speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
hallo alle miteinander,

ich hab ein kleines Prob mit Zeos!!! Also ich will per ZeosQuery.Sql.Add(SQL-Statement) ein "Insert Into" Statement abschicken. Bekomme aber obwohl das SQL-Statement absolut correct ist eine Acception auf irgendeiner Adresse!!!
Woran liegt das oder wie kann ich das anders lösen??? Bitte helft mir ich bin fast am Verzweifeln!!! :wall:


Euer Betsche2k4

MarcusB 4. Apr 2004 08:23

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Also ich bin ja auch totaler Newbie, hatte mit Zeos da auch genau dasselbe Problem.
Also Workaround habe ich mir so beholfen, dass ich statt
Delphi-Quellcode:
Dataset.SQL.Add(...)
nur
Delphi-Quellcode:
Dataset.SQL.Text := 'INSERT INTO tabelle (feld1,feld2) VALUES (wert1,wert2)';
Dataset.ExecSQL;
verwende. Also funktionieren tuts.

Vielleicht hilfts. :)

Sharky 4. Apr 2004 08:31

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Hai betsche2k4,

hast Du deine ZConnection richtig eingestellt? Die ist ja, dummer weise, als Vorgabe auf ReadOnly = True gestellt.
Und natürlich darfst Du nicht das ZReadOnlyQuery verwenden ;-)

@MarkusB: Ich hatte noch nie Probleme mit SLQ.Add wichtig dabei ist natürlich vorher ein SQL.Clear zu machen da ansonsten noch ein alter SQL-Befehl in der Query steht.

MarcusB 4. Apr 2004 09:14

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Hm, ich hatte die Syntax mit SQL.Add(...) aus einem Codebeispiel übernommen und es hat leider nicht funktioniert.
Evtl. war aber auch hier ReadOnly = True, ich werde das nochmal ausprobieren.
Wo liegt denn eigentlich der Unterschied zwischen SQL.Add(...) und SQL.Text := '...' ?
Das wär mal fürs Verständnis ganz interessant. Vielleicht weis es jemand ?

Sharky 4. Apr 2004 09:21

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Zitat:

Zitat von MarcusB
...Wo liegt denn eigentlich der Unterschied zwischen SQL.Add(...) und SQL.Text := '...' ?
Das wär mal fürs Verständnis ganz interessant. Vielleicht weis es jemand ?

Mit SQL.Text:= stetzt Du die Eigenschaft Text.
Mit SQL.Add fügst Du der Eigenschaft Text eine neue Zeile hinzu.
Hier mal ein Beispiel:

Delphi-Quellcode:
begin
   Query1.Close;
   Query1.Text := 'SELECT * FROM adressen ORDER BY';
   if (aufwaerts) then
   begin
     Query1.Add ('ASC');
   end
   else
   begin
     Query1.Add ('DESC');
   end;
   Query1.Open;
end;

MarcusB 4. Apr 2004 09:53

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
*bing* :-D
Prima, danke... man wird schlauer :thuimb:

betsche2k4 4. Apr 2004 15:38

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Thanks to all of you!!!
Danke für die Tipps, die haben wirklich geholfen. mit ExecSQL hats sofort geklappt. Das problem liegt in der ZeosComponente selbst. Wenn man zum beispiel ein INSERT INTO mit Zeos.active absetzt, erwartet die Komponente ein Result und bekommt damit einen Fehler weil er ja kein result zurück bekommt!!! Also geht nur ExecSQL !!!


Also danke für die vielen Antworten


Euer Betsche2k4 :cheers:

Robert_G 4. Apr 2004 16:04

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Warum Active???

betsche2k4 4. Apr 2004 16:14

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Also activate um ein SQL Statement abzuschicken. Kleines Beispiel:
Delphi-Quellcode:
   ZeosQuery.SQL.Clear;
   ZeosQuery.Sql.Add('SELECT * FROM Datenbank.Tabelle;');
   ZeosQuery.Activate := true; // abschicken des SQL-Statements
Also einfach testen und freuen. In ZeosQuery-Komponente haste dann alle Results!!! :)

Viel Spass Betsche2k4 :cheers:

[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]

betsche2k4 4. Apr 2004 16:15

Re: speichern neuer Datensätze über Zeos in MySQL4.0 Db????
 
Sorry heißt natürlich Active := true!!!!

Betsche2k4


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:19 Uhr.
Seite 1 von 2  1 2      

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