Poslední příspěvky

Stran: 1 [2] 3 4 ... 10
11
Obecné / Re:Aktualizovanie DB podľa verzií
« Poslední příspěvek od pf1957 kdy 19-06-2018, 10:00:24 »
Nerozumiem tomu "JEDI VCS version"
Jsem psal, ze je to stary: to je z dob, kdy jeste nebyl Subversion, uz ani nevim, jak se to puvodne jmenovalo, pak vznikl zamer z toho udelat free projekt pod JEDI a ten tusim vysumel. Pozdeji jsme tam davali cislo SVN revize a ta ma treba cmdline tool subwcrev.exe, ktery dokaze do souboru doplnit aktualni informaci, napr. ze sablony
Kód: [Vybrat]
WCREV=$WCREV$
WCDATE=$WCDATE=%d.%m.%Y$
WCTIME=$WCDATE=%H:%M:%S$
udela
Kód: [Vybrat]
WCREV=3356
WCDATE=21.03.2016
WCTIME=12:14:24
Takze to fungovalo tak, ze po kazde zmene jsme vyrobili script pro vytvoreni cele DB z gruntu a strcili ho do SVN. Nastrojem jsme mu upravili cislo revize a udelali diff script s novym cislem revize. A neco podobneho jsme udelali s version info pri prekladu aplikace a pak obe hodnoty porovnavali.


12
Obecné / Re:Debbug - GTT voči RunTime persistent table
« Poslední příspěvek od Stanislav Hruška kdy 19-06-2018, 09:51:05 »
Mne by sa viac páčilo, keby sa triggert nespustil, keď neexistuje trvalá tabuľka. Presnejšie, spustil by sa, ale po vyhodnotení podmienky aj hneď ukončil. Ja viem, je to pre DB práca navyše = nie je to čisté :D
13
Obecné / Re:Aktualizovanie DB podľa verzií
« Poslední příspěvek od Stanislav Hruška kdy 19-06-2018, 09:44:50 »
Nerozumiem tomu "JEDI VCS version"
14
Obecné / Re:Debbug - GTT voči RunTime persistent table
« Poslední příspěvek od Stanislav Hruška kdy 19-06-2018, 09:39:25 »
Už mi to došlo ;D , len si ma predbehol v napísaní reakcie. Myslím si, že už je rozhodnuté. Len si premyslieť aplikovanie. Trochu ma mätie ten triggert, ale to si doštudujem. Asi máš na mysli niečo ako "After Insert". Aplikácia o tom bude vedieť. Veď sa musí rozhodnúť, či mazať, alebo nemazať tie údaje.
Ďakujem.
15
Obecné / Re:Aktualizovanie DB podľa verzií
« Poslední příspěvek od pf1957 kdy 19-06-2018, 09:35:05 »
  • Verzia DB = verzia EXE. To chcem. OK
  • Verzia DB > verzia EXE. Odmietnem spustiť program. Nebudem nič riskovať
  • Verzia DB < verzia EXE. Spustia sa postupne všetky požadované skripty. Musí to fungovať, aj keď bude rozdiel vo verziách niekoľko generačný
S FB jsme pouzivali SP, ktera si "drzela" cislo revize, ktere jsme tam dodavali automaticky v prebuild event a to cislo se automaticky dostalo do rozdiloveho scriptu, takze po jeho spusteni se automaticky cislo verze aktualizovalo.
Kód: SQL [Vybrat]
  1. ALTER PROCEDURE "__GETDBVERSION"
  2. RETURNS (
  3.     "VERSION" D_ASCII32,
  4.     REVISION INTEGER)
  5. AS
  6. DECLARE variable DBVERSION D_ASCII32 = '1.5';
  7. DECLARE variable JEDIREVISION D_ASCII32 = '$Revision: 378 $';
  8. DECLARE variable REV VARCHAR(32);
  9. BEGIN
  10.   -- JEDI VCS version as integer
  11.   version = DBVERSION;
  12.   -- JEDI VCS revision as integer
  13.   EXECUTE PROCEDURE "__EXTRACTJEDIVCSVALUE"(:jedirevision, 'revision') returning_values :REV;
  14.   IF (NOT REV IS NULL) THEN
  15.     revision = CAST(REV AS INTEGER);
  16.   suspend;
  17. END^
  18.  
Nekdy pouzivame tabulku DatabaseInfo, kde si udrzujeme cislo verze a cas aktualizace na tu verzi extra nastrojem (instalatorem)

16
Obecné / Re:Debbug - GTT voči RunTime persistent table
« Poslední příspěvek od pf1957 kdy 19-06-2018, 09:34:57 »
Citace
A ja mel za to, ze cely cirkus s GTT vymyslis kvuli ladeni, aby videl na data i po skonceni transakce.
Presne tak!!!
No a tak bych si je z GTT kopiroval triggerem do nejake presistentni tabulky se stejnou strukturou, kde bych se na data mohl divat. A pak bych to odstranil. A kod aplikace by o tom vubec nevedel, jen by to zralo nejaky cas na ty kopie.
17
Obecné / Re:Debbug - GTT voči RunTime persistent table
« Poslední příspěvek od Stanislav Hruška kdy 19-06-2018, 09:30:42 »
Citace
A ja mel za to, ze cely cirkus s GTT vymyslis kvuli ladeni, aby videl na data i po skonceni transakce.
Presne tak!!!
18
Obecné / Re:Debbug - GTT voči RunTime persistent table
« Poslední příspěvek od pf1957 kdy 19-06-2018, 09:26:57 »
To mi akosi nesedí. Nevidím na to dôvod.
A ja mel za to, ze cely cirkus s GTT vymyslis kvuli ladeni, aby videl na data i po skonceni transakce. Pokud ne, tak bych to uz vubec neresil.
19
Obecné / Re:Debbug - GTT voči RunTime persistent table
« Poslední příspěvek od Stanislav Hruška kdy 19-06-2018, 09:24:28 »
Citace
Nevim, co je na tabulkach necisteho
Na samotných tabuľkách nič. Len pri ich použití mám/PC prácu navyše. Pri trvalých tabuľkách automaticky definujem Foreign key. Bez nich si to nedovolím - určil som si také pravidlo. A už vďaka tomu nabieha navyše práca s indexmi + veľkosť DB. Prosím nekomentovať veľkosť DB :)
Citace
Ale pak bych se vratil k myslence pro ucely ladeni si udelat "vizualizaci" tech dat v GTT, treba triggerem, ktery je prekopiruje do presistentni tabulky. Pak u produkcni DB dropnes jen ty triggery a tabulky. A before insert triggerem si zjistis, jestli je GTT prazdna a jestli ano, tak smazes data z te kopie.
To mi akosi nesedí. Nevidím na to dôvod. Pri ladení budem používať len GTT. Možno to je myslené ako ochrana proti zaneseniu chýb do program. V takom prípade by som o tom mal uvažovať.
20
Obecné / Aktualizovanie DB podľa verzií
« Poslední příspěvek od Stanislav Hruška kdy 19-06-2018, 09:13:59 »
Ešte len v teoretickej rovine rozmýšľa ako nato.
  • DB aj program budú mať číslo verzie.
  • Neviem kde držať číslo verzie DB. Exe ho má/bude mať v sebe
  • Porovnám verzie a v prípade potreby pustím skripty.
  • V prípade spustenia skriptov predpokladám, že nesmie nikto pracovať s DB
  • Pridám nové tabuľky
  • Aktualizujem dotknuté tabuľky
  • Vymažem nepotrebné trvalé tabuľky
  • Nepredpokladám manipuláciu s údajmi
  • Predpokladám, že skripty je lepšie držať v samostatnom súbore mimo exe
  • Predpokladám, že je lepšie na spustenie skriptov použiť samostatný program/bat
Do úvahy pripadajú tri situácie
  • Verzia DB = verzia EXE. To chcem. OK
  • Verzia DB > verzia EXE. Odmietnem spustiť program. Nebudem nič riskovať
  • Verzia DB < verzia EXE. Spustia sa postupne všetky požadované skripty. Musí to fungovať, aj keď bude rozdiel vo verziách niekoľko generačný
Stran: 1 [2] 3 4 ... 10