historie a jedinecnost [Re: Platnost zaznamu v ciselniku jeste jednou]
Libor Chocholaty
chocholaty na gncz.cz
Čtvrtek Červenec 24 10:33:09 CEST 2003
Radek Kanovsky wrote:
>On Mon, Jul 21, 2003 at 11:41:22AM +0200, Karel Zak wrote:
>
>Omlouvam se za zpozdeni.
>
>
>
>>>>>-----Original Message-----
>>>>>From: Radek Kanovsky [mailto:rk na dat.cz]
>>>>>Predpokladejme, ze mame historickou tabulku, kde sloupec "a" ma byt
>>>>>unikatni v kteremkoliv okamziku. Je sice mozne, aby dva zaznamy mely
>>>>>stejnou hodnotu polozky "a", ale jejich platnost se nesmi prekryvat.
>>>>>
>>>>>
>>>> Tohle je IMHO velmi jednoduche... PK prece muze byt slozeny...
>>>>=> unikatni musi byt dvojice A:platnost...
>>>>
>>>>
>>>Platnost je ale zadana jako datum_od - datum_do:
>>>
>>> insert into hist (id, a, od, do) values(1, 12, '2003-01-01', '2003-02-28');
>>> insert into hist (id, a, od, do) values(2, 12, '2003-02-01', '2003-03-31');
>>>
>>>
>> Pomerne snadno v triggeru, ktery to prekryvani odhali.
>>
>>
>
>Ano, ale zapomnel jsem zminit, ze bych to potreboval z urcitych duvodu
>resit na aplikacni urovni. Nad databazi je objektove-relacni mapovani.
>V tomto konkretnim pripade je preferovana flexibilita nad vykonem a cim
>vic veci bude reseno v programovacim jazyku O-R komponent (python),
>tim lip pro nas.
>
>
Tak tu logiku date do objektu, ktery zprostredkovava pristup k ty
tabulce. Muzete pri zmenach delat exkluzivni zamek na celou tabulku,
pokud je to potreba, a odemykat az po transakci, muzete tam dat flag,
ktery bude rikat, zda data jsou synchronizovana s dtb nebo ne, muzete
pridat jeste jednu vrstvu, jakousi proxy pro pristup k tehle tabulce. apod.
Libor
Další informace o konferenci Databases