Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Java - jTable zaznaczanie rekordów

stuart18 15 Gru 2017 09:21 447 7
  • #1 15 Gru 2017 09:21
    stuart18
    Poziom 12  

    Witam mam następująca tabelę
    Java - jTable zaznaczanie rekordów

    W której po zaznaczeniu jednego rekordu i po kliknięciu przycisku Zapisz do Excela pobiera on z bazy danych wybraną osobę po jej ID. A czy dało by się zrobić coś takiego, że zaznaczam dwa rekordy w tabeli lub wszystkie na raz i za jednym razem zapisuje wszystkich do Excela?

    0 7
  • #2 15 Gru 2017 10:05
    JacekCz
    Poziom 36  

    stuart18 napisał:
    Witam mam następująca tabelę
    Java - jTable zaznaczanie rekordów

    W której po zaznaczeniu jednego rekordu i po kliknięciu przycisku Zapisz do Excela pobiera on z bazy danych wybraną osobę po jej ID. A czy dało by się zrobić coś takiego, że zaznaczam dwa rekordy w tabeli lub wszystkie na raz i za jednym razem zapisuje wszystkich do Excela?


    JTable musi mieć inny atrybut, i nie wiem jak pobierasz wybrane wiersze, trzeba metodą zwracającą tablicę wierszy. Coś w rodzaju getSelectioXxxxxxxMutiple() - nie mam dostępu do narzędzi programistycznych.
    Działa i jest w pełni wspierane. W/w rzeczy mają klarowne nazwy i znajdziesz.

    ps. Nie przekręcaj nazw klas.

    0
  • #3 15 Gru 2017 10:40
    stuart18
    Poziom 12  

    int rekord = jTable1.getSelectedRow();

    i później w zapytaniu sql:

    SELECT id, imie, nazwisko, funkcja FROM osoby WHERE id= jTable1.getValueAt(rekord, 0)

    Ale jak mi zwróci tablicę rekordów to jest id{15,16,17,18,19} to jak to podstawić w zapytaniu sql, żeby się wykonało. W Javie getSelectedRows() zwróci tablicę.

    0
  • Pomocny post
    #4 15 Gru 2017 12:44
    JacekCz
    Poziom 36  

    na poziomie SQL-a pomyśl "where id in ( ..."

    Trochę dziwną architekturę się domyślam po pytaniach, które zadajesz. Na moją intuicję zbyt niskopoziomowe, pobierasz dane, które już posiadasz.

    A co do Javy, usilnie zalecam zaznajom się z koncepcją model dla JTable. Z góry powiem, tam się rozwiązują problemy, których jeszcze być może nie spotkałeś , jak dynamiczne doładowywanie wierszy dużej tabeli.

    0
  • #5 15 Gru 2017 13:02
    stuart18
    Poziom 12  

    Uczę się sql-a i Javy od miesiąca tak więc wielu rzeczy jeszcze nie umiem... i chyba nie domyślę się jak dokończyć te zapytanie :)

    0
  • #6 15 Gru 2017 13:14
    JacekCz
    Poziom 36  

    stuart18 napisał:
    i chyba nie domyślę się jak dokończyć te zapytanie :)


    to nie nic wspólnego z Javą:
    google "where in" pierwsza pozycja

    0
  • #7 15 Gru 2017 13:55
    stuart18
    Poziom 12  

    Znalazlem :) wszystko działa jak powinno dzięki

    0
  • #8 17 Gru 2017 12:22
    JacekCz
    Poziom 36  

    stuart18 napisał:
    Znalazlem :) wszystko działa jak powinno dzięki


    no niekoniecznie.
    Dalej pobierasz dane, które już posiadasz itd...

    0