Fråga : applådera mellanlägg; övergående nytt seq nr. till barnet bordlägger

för bordlägger efter, logik för

what för
tableD (tableD_pk, col1, col2, col3, col4, col5, col6, col7) för
tableC (tableA_fk, col1, col2, col3) för
tableB (tableB_pk, col1, col2, col3, col4, col5) för
tableA (tableA_pk, tableB_fk, col1) kan dig föreställa sig för att göra efter?

we kan skapa 2 ordnar för tableB och tableA; men hur du passerar på det nytt ordnar numrerar till barnrekorden?

--skapa nya rekord i tableB som baseras på bordlagd match
INSERT in i createnewpk för tableBb
select, d.col3, d.col4, d.col5, d.col6, tableB b för d.col7
from, bordlagt D var d.col1 = b.col1 och d.col2 och b.col2

--skapa det nya rekordet för barnrekord i
INSERT för ingen tableA (villkorar involverat), in i tableA en createnewpk för
select, b.generated_newpk, col1

--skapa det nya rekordet för barnrekord i tableC men uppdatera datan som baseras på bordlagd match.
INSERT in i
select a.generated_newpk, .d.col5, d.col6, d.col7 from
tableC c, bordlagt D var c.col1 = d.col5 och c.col2 = d.col6 och c.col3= d.col7
för tableC c " klar "

Svar : applådera mellanlägg; övergående nytt seq nr. till barnet bordlägger

När du använder en ordna, du använder efter tankeskapelsen för att få ett nytt värderar från det:

seqname.nextval

Du kan därefter se till strömmen värderar av ordna (utan ny utveckling, värderar), genom att använda, efter:

seqname.currval

Så by däribland de currval i dig sätter in meddelanden dig bundsförvanten som barnet ror med deras föräldrar.
Andra lösningar  
 
programming4us programming4us