Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi String eintragen der Apostroph enthält (https://www.delphipraxis.net/168396-string-eintragen-der-apostroph-enthaelt.html)

p80286 18. Mai 2012 17:45

AW: String eintragen der Apostroph enthält
 
Würdest du einmal etwas Code spendieren?
Mir fehlt vor allem ein .Close
Delphi-Quellcode:
fuunc.ASQLite3Query1.Close;
 fuunc.ASQLite3Query1.SQL.Clear;
 fuunc.ASQLite3Query1.SQL.Add('INSERT INTO mails (absender, mail, datum) VALUES ('''+abs+''', '''+txt+''', '''+datum+''')');
 fuunc.ASQLite3Query1.ExecSQL;
fuunc.ASQLite3Query1.Close;
Gruß
K-H

Satyr 18. Mai 2012 18:10

AW: String eintragen der Apostroph enthält
 
Sorry, Telefon.

Der Code der bei mir 1 Mal funktioniert aber dann eine Zugriffsverletzung macht ist:

Delphi-Quellcode:
with fuunc.ASQLite3Query1 do
try
  RawSQL := False;
  SQL.Text := 'INSERT INTO mails (absender, mail, datum) VALUES (:absender,:mail,:datum)';
  Params.ParamByName('absender').Value := abs;
  Params.ParamByName('mail').Value := txt;
  Params.ParamByName('datum').Value := date;
  ExecSQL;
  SQL.Clear;
  Params.Clear;
  Close;
finally
  Free;
end;

DeddyH 18. Mai 2012 18:15

AW: String eintragen der Apostroph enthält
 
Das ist ja anscheinend eine Komponente, wieso gibst Du die frei? Dafür ist doch im Normalfall der Owner zuständig. Und ein Close nach ExecSQL macht keinen Sinn, lass Dir da nix einreden.

Satyr 18. Mai 2012 18:21

AW: String eintragen der Apostroph enthält
 
Weil ich "Angst" habe das ich den Arbeitsspeicher zumülle, wenn ich da nix freigebe. Kann das nicht passieren?

DeddyH 18. Mai 2012 18:41

AW: String eintragen der Apostroph enthält
 
Das kommt jetzt darauf an. Hast Du sie zur Entwurfszeit auf das Formular gepackt oder zur Laufzeit erzeugt?

Satyr 18. Mai 2012 18:49

AW: String eintragen der Apostroph enthält
 
Zur Entwurfszeit. Ist für mich übersichtlicher.

DeddyH 18. Mai 2012 18:52

AW: String eintragen der Apostroph enthält
 
Dann musst Du sie auch nicht freigeben, das machst Du mit anderen Komponenten ja hoffentlich auch nicht.

Luckie 18. Mai 2012 18:52

AW: String eintragen der Apostroph enthält
 
Dann darfst du es auch nicht frei geben. Denn wie oder wann soll es den nach dem Freigeben wieder erstellt werden? Wenn du die Komponente zur Entwurfszeit auf das Formular machst, dann ist das Formular der Owner und gibt die Komponente auch wieder frei.

Satyr 18. Mai 2012 19:28

AW: String eintragen der Apostroph enthält
 
Ah ok, klingt logisch. Ich hatte nur schon so oft gelesen, das irgendwelche Fehler bei DB Programmierung damit zusammenhängen, das man den Arbeitsspeicher nicht sauber genug nutzt.
Aber ohne free und close funktioniert es perfekt, so wie es soll. Danke Euch, hat mir sehr geholfen :).


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:04 Uhr.
Seite 2 von 2     12   

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