psani funkce v pgsql

Jiri Chaloupka dev na b2bexpander.com
Čtvrtek Listopad 21 10:50:24 CET 2002


<citováno kdo="Karel Zak">
> On Wed, Nov 20, 2002 at 11:12:59PM +0100, Jiri Chaloupka wrote:
>> Pokud panove dovolite, budu jeste chvili pokracovat s ptanim ...
>>
>> takze jsem se posti jinym smerem.
>> mam funkci a trigger:
>>
>> create function default_phoneid_insells() returns opaque as '
>> -- Funkce slouzi k prevodu linku na id z tabulky
>> --   pred pripadnym smazanim telefonu z databaze
>
>  To je podivne definovana integrita, kdyz musite neco prevadet. Proc
> nepouzivate rovnou to id nebo jako primarni klic primo ten telefon a
> nasledne nejaky FOREIGN KEY.

tam je id one druhe tablulky.
To proc jdu takto je proto, ze davam doporadku stavajici databazi a nemohu
udelat alter table blabla add fogeign key ...

mohl bych to samozrejme udelat tak ze bych udelal
- prejmenovani tabulky
- vytvoreni nove vcetne definice ciziho klice
- zkopirovani starych zaznamu do nove
- smazani stare tabulky

Nicmene takto mi to v danem pripade prijde - lepsi asi neni to spravne
slovo. Nicmene tato funkce spolu s trigerem udela to ze pred smazanim
zaznamu ze zdrojove tabulky zmeni eventualni zaznamy v tabulce ktera se na
ni odkazuje na nejakou defaultni hodnotu (id=0 znamena smazany typ)

Ale mozna na to jdu zbytecne slozite ...








Další informace o konferenci Test