Pytanie : Wyrocznia Forma: Dlaczego checkboxes dlaczego od the baza danych

Cześć,

I potrzeba checkboxes w the Wyrocznia Tworzyć od the baza danych. I mieć baza danych stół struktura podążać:

PEOPLE (PEOPLEID, FNAME, LNAME)
insert w LUDZIE (PEOPLEID, FNAME, LNAME) WARTOŚĆ (11111, "ANDY", "ADAMS ");
insert w LUDZIE (PEOPLEID, FNAME, LNAME) WARTOŚĆ (22222, "BRIAN", "BANK ");
insert w LUDZIE (PEOPLEID, FNAME, LNAME) WARTOŚĆ (33333, "CAROL", "OBÓZ ");

PEOPLE_INTERESTS (PEOPLEID, INTERESTID)

insert w PEOPLE_INTERESTS (PEOPLEID, INTERESTID) WARTOŚĆ (11111, "AAA ");
insert w PEOPLE_INTERESTS (PEOPLEID, INTERESTID) WARTOŚĆ (11111, "CCC ");
insert w PEOPLE_INTERESTS (PEOPLEID, INTERESTID) WARTOŚĆ (33333, "CCC ");
insert w PEOPLE_INTERESTS (PEOPLEID, INTERESTID) WARTOŚĆ (33333, "BBB ");

" INTERESTS_TYPE (INTERESTID, INTERESTSTYPE)
insert w INTERESTS_TYPE (INTERESTID, INTERESTS) WARTOŚĆ ("AAA", "ROLNICTWO ");
insert w INTERESTS_TYPE (INTERESTID, INTERESTS) WARTOŚĆ ("BBB", "KSIĄŻKA ");
insert w INTERESTS_TYPE (INTERESTID, INTERESTS) WARTOŚĆ ("CCC", "KOMPUTER ");
insert w INTERESTS_TYPE (INTERESTID, INTERESTS) WARTOŚĆ ("DDD", "FINANSE ");

I polubić te 4 checkboxes na the forma. W the forma, gdy użytkownik rewizja dla "ANDY ADAMS", the z cztery checkboxes, '' ROLNICTWO '' i "KOMPUTEROWY" checkboxes musieć sprawdzać. Użytkownik musieć pozwolić te checkboxes. Gdy tworzyć nowy rejestr, te 4 checkboxes musieć dostępny user.

I naprawdę doceniać jeżeli jeżeli móc niektóre pomysł na dlaczego na. I być nowy forma, mój wiedza forma być bardzo limited.

Thanks,

Odpowiedź : Wyrocznia Forma: Dlaczego checkboxes dlaczego od the baza danych

Dla ten poniekąd zachowanie z limitowany ale ewentualny odmienianie liczba możliwość I wybierać the następujący podejście, ten wymagać właśnie właśnie zmiana od brak zachowanie wyrocznia forma.
Tworzyć chwilowy stół
tworzyć globalny chwilowy stół cartesian_check
((PEOPLEID (ten sam typ inny),
interest_id (ten sam typ inny),
INTERES (ten sam typ inny),
sprawdzać varchar2 (1))
NA POPEŁNIAĆ PREZERWA RZĄD;

definiować the dziecko blok na the chwilowy stół i zaznaczać ono tylko updateble;
tylko the kolumna interes i musieć widoczny, i tylko sprawdzać być updateble
w the pre-quiry cyngiel the dziecko blok
    deleatur od cartesian_check;
    wszywka w cartesian_check
      wybiórka: masterblock.people_id, interest_id, INTERES,
      (wybiórka odszyfrowywać (obliczenie (*), (0), "N", "Y ")
     od people_interest PI
     dokąd PI people_id =: master.people_id
     i PI.interest_id = it.inertestid) sprawdzać
     od interests_type ONO;

w the on_update cyngiel
    jeżeli sprawdzać = "N" wtedy
        deleatur od people_interest PI
        dokąd PI people_id =: people_id
       i PI.interest_id =: interest_id;
   kończyć jeżeli;
    jeżeli sprawdzać = "Y" wtedy
      wszywka w interests_type ONO
      wybiórka: people_id: interest_id
      od podwójny
      -- zapobiegać od Y N Y od drugi rejestr
      DOKĄD NIE ISTNIEĆ (WYBIÓRKA (1)
                                         OD people_interest PI
                                         dokąd PI people_id =: people_id
                                         i PI.interest_id =: interest_id)
    kończyć jeżeli;
Inne rozwiązania  
 
programming4us programming4us