AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi [FibPlus] Verbindung getrennt nachAufruf einer SP

[FibPlus] Verbindung getrennt nachAufruf einer SP

Ein Thema von IngoB · begonnen am 9. Aug 2004 · letzter Beitrag vom 10. Aug 2004
Antwort Antwort
IngoB

Registriert seit: 19. Feb 2004
Ort: Oldenburg
8 Beiträge
 
Delphi 7 Enterprise
 
#1

[FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 9. Aug 2004, 22:02
Hallo

Ich habe folgendes Problem mit Firebird 1.5.1 und den FibPlus Komponenten

Ich habe eine einfache Storded Procedure mit der ich ein einfaches insert mache.


Aufrufen tue ich diese mit

Delphi-Quellcode:
  with dmMain.pfibsprocEtbEintrag do
    begin

      ParamByName('Eintrag').Asstring := cxmemoEintrag.Text;
      parambyName('Bemerkung').AsString := cxmemoBemerkung.Text;

      if not dmMain.pfibtransDefault.InTransaction then dmMain.pfibtransDefault.StartTransaction;
      try
        ExecProc;
        dmMain.pfibtransDefault.Commit;
      except
        dmMain.pfibtransDefault.Rollback;
      end;
erschreibt die Werte auch brav in die Datenbank, aber danch trennt er die Verbindung zur Datenbank.

Woran liegt das bzw. wie kann ich das verhindern?

Gruß Ingo
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 9. Aug 2004, 23:56
Schreiben von Daten :

Delphi-Quellcode:
procedure SchreibeDaten (Feld1,Feld2 : string);
begin
  with DM do begin
    SP.ParamByName('Feld1').AsInteger := StrToInt (Feld1);
    SP.ParamByName('Feld2').AsFloat := StrToFloat (Feld2);
    SP.ExecProc;
  end;
end;
So, aber jetzt mußt Du Butter bei die Fische geben. Wie sieht die SP in der DB aus ? Ist die überhaupt angelegt ? Starttransaction wird nach der Parameterübergabe aufgerufen. Werden die eventuell überschrieben ? Da bin ich überfragt, könnte schon sein. Welches Administrationstool verwendest du ? Schon mal damit ausprobiert ? usw. Wie du siehst : Fragen über Fragen, deshalb für DP-Chat ungeeignet. Lemmy ist auch noch da und MrSpock.
Gruß
Hansa
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 10. Aug 2004, 06:18
Guten Morgen,

Mensch Hansa, warum weckst Du mich so früh *gähn*

Ich denke das Problem liegt daran, dass Du nach dem ExecProc die Transaktion mit einem Commit zu machst. Wenn die Transaktio weiterhin laufen soll (weil z.B. andere DataSets dranhängen), dann versuch mal ein CommitRetaining.

Grüße
Lemmy
  Mit Zitat antworten Zitat
IngoB

Registriert seit: 19. Feb 2004
Ort: Oldenburg
8 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 10. Aug 2004, 07:31
Hallo

Danke, das mit dem CommitRetaining hat funktiniert

Gruß Ingo
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 10. Aug 2004, 10:00
Schön, daß das funktiomiert. Aber jetzt hat die Lösung eine Frage für mich aufgeworfen. Ich wußte jetzt nicht mehr, ob ich nun Commit oder Commitretaing verwende. Und ich wollte mal sehen, wo bei mir Starttransaction steht. Ich rufe entweder Commit auf oder Rollback. Der Witz ist aber jetzt, daß ich Starttransaction nie aufrufe. Wieso funktioniert das Programm trotzdem ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#6

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 10. Aug 2004, 11:43
Hi Hansa,

das ist der Zauber von Delphi....

Irgendwo in den Einstellungen der Komponenten wird stehen, dass die Transaktionskomponenten automatisch Transaktionen starten kann bzw. dass die DataSets die Transaktion anweisen können eine zu starten.... Bei IBX gibts ja ne Eigenschaft AutoCommit, so etwas änliches wird es bei den FIBPLus für den ungekehrten Fall auch geben....

Grüße
Lemmy
  Mit Zitat antworten Zitat
IngoB

Registriert seit: 19. Feb 2004
Ort: Oldenburg
8 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 10. Aug 2004, 11:52
Hallo Hansa

Es gibt bei der Komponente pfibDataset die Eigenschaft Options dies kannst du auf poStartTransaction setzten dann startet er automatisch eine Transaction

Gruß Ingo
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

Re: [FibPlus] Verbindung getrennt nachAufruf einer SP

  Alt 10. Aug 2004, 12:14
Ich wußte, daß in dem Toolbox-Artikel drin stand, daß die Komponente selber die Transaktion startet, aber nicht mehr wo und warum. Das Dataset ist offensichtlich standardmäßig so eingestellt. Habe es mit einem neuen getestet. *suchtartikel*
Gruß
Hansa
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 01:46 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