AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken FireDAC : Trigger geht nicht
Thema durchsuchen
Ansicht
Themen-Optionen

FireDAC : Trigger geht nicht

Ein Thema von Hansa · begonnen am 4. Sep 2015 · letzter Beitrag vom 7. Sep 2015
 
nahpets
(Gast)

n/a Beiträge
 
#16

AW: FireDAC : Trigger geht nicht

  Alt 5. Sep 2015, 07:23
Hallo Hansa,

mache doch einfach mal ein
Code:
FireDacQuery.SQL.Text:= 'insert into TABLE (NR,BEZ) values (:nr,:be)'; // vor der Schleife -> nur einmal zuweisen. Macht bei den heutigen Rechnern kaum einen Unterschied.
FireDacQuery.ParamByName('nr').AsInteger:= i + 100; //die Parametersyntax könnte ggf. abweichen
FireDacQuery.ParamByName('be').AsInteger:= i;
FireDacQuery.ExecSQL;
Wie schon gefragt. (Antwort vieleicht überlesen) Wird der Generator erhöht wenn dein Fehler kommt?
Hansa schrieb weiter oben, dass der Trigger funktioniert.

Aber ließe sich der obige Code nicht noch erweitern, in dem man immer eher sowas macht:
Delphi-Quellcode:
sSQL := 'insert into TABLE (NR,BEZ) values (%d,%s);';
DM.Query.SQL.Clear;
DM.Trans.StartTransaction;
for i := 1 to n do begin
  DM.Query.SQL.Add(Format(sSQL,[i + 100,QuotedStr(i)]));
  if i Mod 1000 = 0 then begin
    DM.Query.ExecSQL;
    DM.Trans.Commit;
    mem1.Lines.Add(IntToStr(i));
    DM.Query.SQL.Clear;
    DM.Trans.StartTransaction;
  end;
end;
Hier werden dann halt immer 1000 Inserts an einem Stück an die Datenbank gegeben und von ihr verarbeitet, statt satzweise. Hab' sowas in de Art vor Jahren mal bei 'ner SQL-Server-Datenbank gemacht, dass hat bei der zu verarbeitenden Datenmenge etliche Stunden Zeitersparnis gebracht.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz