Autor Téma: Debbug - GTT voči RunTime persistent table  (Přečteno 6422 krát)

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2594
  • Karma: 133
    • Verze Delphi: D2007, XE3, DX10
Re:Debbug - GTT voči RunTime persistent table
« Odpověď #30 kdy: 19-06-2018, 10:29:09 »
máš na mysli niečo ako "After Insert". Aplikácia o tom bude vedieť. Veď sa musí rozhodnúť, či mazať, alebo nemazať tie údaje.
To muze delat treba i ten trigger nezavisle na aplikaci - ta to oznami commitnutim transakce a vyprazdnenim GTT. Takze kdyz v BeforeInsert triggeru bude GTT prazdna, tak to znamena, ze se spustilo nove zpracovani v nove transakci a muze vyprazdnit nejdriv trvalou tabulku. Totez muze udelat i s AfterInsert, kdy zjisti, jestli prave vlozeny zaznam je jediny v GTT nebo muzes mit triggery dva: before na hlidani noveho zpracovani a after na replikaci dat.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Debbug - GTT voči RunTime persistent table
« Odpověď #31 kdy: 19-06-2018, 10:36:19 »
Citace
Takze kdyz v BeforeInsert triggeru bude GTT prazdna, tak to znamena, ze se spustilo nove zpracovani v nove transakci a muze vyprazdnit nejdriv trvalou tabulku.
Výborne, to sa mi páči.
S triggert-om som pracoval kedysi dávno a tak o ich možnostiach nemám predstavu.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Debbug - GTT voči RunTime persistent table
« Odpověď #32 kdy: 19-06-2018, 20:48:24 »

Citace
Muzes i pred smazanim te tabulky (tj. pred ukonceni transakce nebo spojeni) ziskat jeji obsah ze sve aplikace (jednoduse SELECTtem
To viem. Veď bez toho by mi boli nanič.
Riešenie pomocou spúští sa mi veľmi páči. Nebudem zasahovať do zdrojáku. A v DB tie spúšte budem kopírovať a len zmením  názvy tabuliek. Krása :D
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.