Inne działy

Java przykładowe programy

 

Java aktualizacja rekordu w bazie danych

 

Obiekt ResultSet do aktualizacji rekorduużywa metody Update, która pozwala aktualizować rekordy nie tylko w samym obiekcie ResultSet, ale także w bazie danych. Zobaczmy, jak to działa.

Powiększ swoją formę. Dodaj nowy panel do formy. Dodaj nowy przycisk na panelu. Zmien domyślną nazwę przycisku na btnAktualizacjaRekordu . Zmień tekst na przycisku na Aktualizacja rekordu . Mamy również zamiar dodać przyciski, które utworzą nowy rekord w bazie danych, zapiszą rekord, anulują wszelkie aktualizacje i usuną rekord. Należy więc dodać jeszcze cztery przyciski na panelu. Wprowadź następujące zmiany:

Button Name: btnNowyRekord
Button Text: Nowy rekord

Button Name: btnUsunRekord
Button Text: Usuń rekord

Button Name: btnZapiszRekord
Button Text: Zapisz nowy rekord

Button Name: btnAnulujNowyRekord
Button Text: Anuluj nowy rekord

Kiedy skończysz, formularz powinien wyglądać podobnie jak ten poniżej (choć możesz, zmienić kolejność przycisków):

 

 

Kliknij dwukrotnie przycisk Aktualizacja rekordu, aby stworzyć kodu procedury.

Pierwszą rzeczą jaką należy wykonać to pobranie tekstu z pola tekstowego:

String first = textImie.getText( );
String last = textNazwisko.getText( );
String job = textStanowisko.getText( );
String id = textID.getText( );

Jeśli chcemy zaktualizować pole ID, musimy przekształcić łańcuch na liczbę całkowitą:

int intID = Integer.parseInt(id);

Obiekt Integer ma metodę zwaną parseInt . W pomiędzy nawiasy okrągłe metody parseInt, wpisz ciąg znaków, który chcesz konwertować.

Teraz, gdy mamy wszystkie dane z pól tekstowych, możemy wywołać odpowiednie metody aktualizacji obiektu ResultSet:

rs.updateString( "Imie", imie );

Istnieje sporo różnych metod służących do aktualizacji. Powyżej wykorzystaliśmy metodę updateString . Ale trzeba znać typ pola w tabeli bazy danych. Mamy trzy ciągi tekstowe (imie, nazwisko, stanowisko) i jedną wartość całkowitą (ID). Więc musimy urzyć trzy razy metodę updateString i jedną updateInt .

W nawiasach okrągłych metody aktualizacji, należy wpisać nazwę kolumny z bazy danych (choć może to być również wartość indeksu). Po przecinku należy wpisać dane, które chcemy zamienić. Tak więc, w powyższym przykładzie, chcemy zaktualizować kolumnę Imie i zastąpić ją wartością, która znajduję się w zmiennej o nazwie imie.

Metody aktualizacji należy zaktualizować  jednak za pomocą obiektu ResultSet. Aby zatwierdzić zmiany w bazie danych, należy wykonać polecenieupdateRow :

rs.updateRow( );

Oto kod, który zaktualizuje obiekt ResultSet i tabelę bazy danych:

try {
rs.updateInt( "ID", intID );
rs.updateString( "Imie", imie );
rs.updateString( "Nazwisko", nazwisko );
rs.updateString( "Stanowisko", stanowisko );
rs.updateRow( );
JOptionPane.showMessageDialog(Pracownicy.this, "Zaktualizowano");
}
catch (SQLException err) {
System.out.println(err.getMessage() );
}

Wszystko musimy umieścić w bloku try ... catch, aby w przypadku gdyby coś poszło nie tak wychwycić błąd. Zauważ też, że dodaliśmy okno komunikatu o pomyślnej aktualizacji.

Oto cały kod, który należy dodać do przycisku Aktualizacja rekordu:

 

private void btnAktualizacjaRekorduActionPerformed(java.awt.event.ActionEvent evt) {                                                       
        String imie = textImie.getText();
        String nazwisko = textNazwisko.getText();
        String stanowisko = textStanowisko.getText();
        String id = textID.getText();
        
        int intID = Integer.parseInt(id);
        
        try{
            rs.updateInt("ID", intID);
            rs.updateString("Imie", imie);
            rs.updateString("Nazwisko", nazwisko);
            rs.updateString("Stanowisko", stanowisko);
            rs.updateRow();
            JOptionPane.showMessageDialog(Pracownicy.this, "Zaktualizowano");
        } catch (SQLException err) {
            System.out.println(err.getMessage());
        }
    }   

Uruchom program i go wypróbuj . Zmień niektóre dane w polu tekstowym. Następnie kliknij przycisk Aktualizuj rekord. Przejdź do następnego rekordu, a następnie wróć. Zmiany powinny być zachowane. Teraz zamknij program i uruchom go ponownie. Należy zauważyć, że zmiany są trwałe.

W następnej lekcji dowiesz się, jak dodać nowy rekord

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.