Czesc Wam
Mam takie zadanko:
Zalozmy ze sa 3 tabele :
- Pracownicy (id_pracownika, nazwa, adres)
- Doswiadczenie (id_doswiadczenia, jakie, gdzie)
- Pracownik_doswiadczenie (id_pracownika, id_doswiadczenia)
Z ostatniej tabeli korzystamy aby mozna bylo przechowac kilka 'doswiadczen' dla jednego pracownika...
na razie chyba wszystko jasne .. ;d
Idziemy dalej :
Mamy sobie DataSet z tabelami : Pracownicy, Doswiadczenie, Pracownik_doswiadczenie
mamy tez odpowiedni adapter uzupelniane przez FillBy w zaleznosci od id_pracownika (najpierw zlaczenie INNER JOIN tabel Doswiadczenie i Pracownik_doswiadczenie) - tez oczywiste, otrzymujemy tabele z doswiadczeniami tylko danego pracownika
teraz :
Dla danego Pracownika chcemy utworzyc doswiadczenie :
- dodajemy nowy wiersz, wypelniamy, dodajemy do adaptera, wszystko super.
- teraz jeszcze pozostaje dodanie wpisu do tabeli Pracownik_doswiadczenie - jednak jest problem...
Problem :
Dane na ktorych operuje sa w adapterze, po dodaniu doswiadczenia (3 linijki wyzej) adapter tworzy wiersz, ale nie jest w tym momencie znany id_doswiadczenia ktory jest generowany automatycznie przez baze (auto_increment), wiec nie jestem w stanie 'przewidziec' jaka wartosc przypisac do tabeli Pracownik_doswiadczenie w polu id_doswiadczenia.
sam adapter przydziela kolejno id_doswiadczenia : -1, -2....
Nie moge tez zczytac wartosci id_doswiadczenia z adaptera, zwiekszyc o 1 i zapisac, gdyz ktos w miedzy czasie moze dodac jakies doswiadczenie, czy skasowac ostatnie, i bedzie problem z aktualizacja.
Jezeli wiecie o co mi chodzi to piszcie, jak nie wiecie to tez piszcie to wyjasnie ;)
pzdr.