Tema: Re: oracle recursive trigger (Bulk SQL solution)
Autorius: Jornada Del Muerto
Data: 2010-08-13 13:29:47
Tai si sql kishi i triggeri ir viskas.
"BigM" <mindaugask_NOSPAM@centras.lt> wrote in message news:i436js$spv$1@trimpas.omnitel.net...
> Taigi jau aiskino ne karta, kad jis pradinio kodo pakeisti negali. Tad turi
> susitaikyt su ta salyga, kad i DB ateina elementarus insert into A (id1,
> id2) values (:id1, :id2). Psio.
>
> "Jornada Del Muerto" <agiraTrintI@gmx.co.uk> wrote in message
> news:i436bf$seq$1@trimpas.omnitel.net...
>> Siaip tai galima ir protinga inserta parasyt visiem absoliuciai
>> duomenim kad sukurtu visus trukstamus dublius, tuo paciu jis nieko
>> neinsertins jei antra pora irasu jau bus ir nesigaus jokios rekursijos
>> aplamai.
>>
>> MSSQL butu kazkas tokio (taip vadinamas insert is selecto - cia 1
>> uzklausa, tik turiu iproti kad butu sql suprantamesnis ji smulkyt i daug
>> eiluciu):
>>
>> Insert Into
>> A (id1, id2)
>> Select -- Toliau insertinama selectinamos reiksmes, kaip matai
>> atbulai kad gaut antra irasa
>> id2, id1
>> From
>> A
>> Left Join
>> A A1 On A.Id2=A1.Id1 And A.Id1=A1.Id2 -- prijungiama atbulas poras
>> Where
>> A1.Id1 Is Null And A1.Id2 Is Null -- del to visas esamas poras
>> nufiltruojam kad liktu tik neesamos
>>
>>
>> Stai ir easy sprendimas viena uzklausa, tik ORACLE SQL persirasyk ir
>> viskas, pirma kart jei poru daug bus trigeris suveiks daug kartu, bet po
>> pirmo jo suveikimo jau nebeliks ka insertint paprasciausia + tai sutvarkys
>> visa lenta ir visada ja laikys tvarkinga.
>