delphi sql transakcje

0

witam mam pytanie... w sumie krotkie..
podam przykladowy kod:

...
try
  IBTransaction1.StartTransaction;
  IBStoredProc1.StoredProcName := 'JAKAS_PROCEDURA';
  IBStoredProc1.ParamByName('PARAMETR').AsString := 'blablabla';
  IBStoredProc1.ExecProc;
  IBTransaction1.Commit;
except
  IBTransaction1.Rollback;
end;

czy to zadziala? chodzi mi o to czy transakcja obejmie tez procedury zapamietane?

0

tak

BTW tak ciężko poczytać/sprawdzić??

0

wlasnie dziwne jest to ze sprawdzam :) robie delete pewnego wpisu (spod IBExperta wykonalo sie poprawnie).. po tym commit :) nastepnie ponowne zapytanie do ibquery, refresh i repaint dbgrida i o dziwo? wpisu nie ma...... wylaczam, wlaczam program? wpis jest :)

0

a jaki poziom masz ustawiony dla transakcji? To musi działać i działa ale trzeba odpowiednio skonfigurować transakcje

0

wiesz musze sie najpierw conieco poduczyc z tych transakcji bo widze ze mieszam... pozwol mi sie upewnic.... transakcji uzywac tylko do insert, update, delete tak? do zwyklych selektow ktore robie przez ibquery nie potrzebuje transakcji i commit i rollback prawda?

0

Poczytaj najpierw co to są te transakcje i gdzie się je stosuje, a stosuje się je tam gdzie chcesz zatwierdzić (commit) lub ewentualnie cofnąć (rollback) zmiany w bazie.
www.austrinus.prv.pl <-- przyda ci się.

0

no nie do końca bo jedna transakcja jest od startu połączenia aż do jego końca. To w tej transakcji powinny wykonać się prawie (są przypadki szczególne) wszelkie SELECTy, natomiast każdy INSERT, UPDATE, DELETE powinien mieć własną transakcję (nie komponent tylko transakcję). Oczywiście tak to ogólnie bo np. dodawanie pozycji do faktury powinno się znajdować w jednej transakcji niezależnie od ilości INSERTów.

Więcej gdzieś na forum - doś dokłądnie opisywałęm transakcje, stosowanie i działanie

0

ok dzieki bardzo mi pomogliscie :) znalazlem ten post gdzie misiekd pisal o transakcjach i pomoglo ale najbardziej pomogl mi fakt ze na poczatku jest jedna transakcja glowna :)

/////
problem rozwiazany juz :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0