Rozliczenie pojazdu aktualizacja do bazy. Zajmiemy się aktualizacją danych w tabeli. Jest to drugi element budowy projektu, a zarazem będzie nam potrzebny, w dalszych artykułach.
Rozliczenie pojazdu aktualizacja – wprowadzenie
Za aktualizację w bazie odpowiada instrukcja update. Przykład zastosowania instrukcji update to:
UPDATE [nazwa bazy].[nazwa tabeli] SET [kolumna 1]=[wartość 1], [kolumna 2]=[wartość 2] WHERE id=[wartość ID];
Nasza tabela może zawierać wiele kolumn. Jednak aktualizacja ma dotyczyć tylko dwóch z nich. Nie ma potrzeby wpisywania danych do kolumn, które nie wymagają aktualizacji. Możliwe jest również aktualizowanie jednej kolumny, pozostawiamy wtedy wartość kolumna 1 i wartość 1 a przecinek i kolumna 2 i wartość 2 usuwamy. Jeżeli jest potrzeba dodania kolejnych kolumn, rozdzielamy je przecinkiem. W większości przypadków są również kolumny, których nie powinno się zmieniać nigdy. Do takich kolumn należy na przykład createDate. Przechowujemy w niej datę utworzenia wpisu, więc jeżeli jest nam potrzebna informacja o ostatniej aktualizacji, lepszym rozwiązaniem jest dodanie kolejnej kolumny.
Rozliczenie pojazdu aktualizacja – zapytania
Tabela Person (osoba)
Aktualizujemy dane o osobie:
UPDATE transportMyBatis.Person SET firstName='Janek', lastName='Kowalski' WHERE id=1;
W przypadku tabeli Person zmieniamy wartości obydwu kolumn, czyli zarówno imie, jak i nazwisko. Jednak w rzeczywistości może istnieje potrzeba zmiany tylko jednej z nich, wtedy należy skorygować odpowiednio zapytanie, tak jak opisałem to we wstępie. Istnieje również możliwość podania w zmiennej wartości null i w samym zapytania sprawdzenie, czy dane są null, a jeżeli tak to pominięcie tej kolumny aktualizacji. To rozwiązanie zależy od bazy danych.
Tabela Vehicle (pojazd)
UPDATE transportMyBatis.Vehicle SET registrationNumber='LMA4521', mark='Opel' WHERE id=1;
W tabeli pojazd również aktualizujemy jedynie dwie wartości, czyli markę samochodu oraz numer rejestracyjny. Pozostałe dane powinny zostać bez zmian.
Tabela Ride (przejazd)
UPDATE transportMyBatis.Ride SET rideDate=' 2020-04-12', counterBefore=12200, counterAfter=12346, km=146, whence='Łomża', `where`='Warszawa', rideKind='Dojazd do pracy', fuelCondition=60, fuelAdd=0, fuelAfter=51.9, fuelConsumed=8.1, fuelNorm=5.7 WHERE id=1;
W przejazdach jest już więcej kolumn do aktualizacji. Jednak w przykładach w dalszych artykułach będziemy przygotowywać takie dane, które będą nam potrzebne w danej sytuacji. Możemy chcieć pozostawić normę spalania ustawioną na null i dopiero po jakimś czasie synchronizator uzupełnia tę wartość.
Tabela Refuel (tankowanie)
UPDATE transportMyBatis.Refuel SET name='', counterBefore=11950, counterAfter=12675, km=725, refuel=44.7, price=4.40, value=196.7, fuelNorm=6.2 WHERE id=1;
W naszym przykładzie aktualizujemy tylko wybrane kolumny. Przy tworzeniu już konkretnego rozwiązania pozmieniamy ilość aktualizowanych kolumn w zależności do potrzeb. Jednak na razie wybraliśmy tylko te, których aktualizacja ma sens.
Tabela Settlement ()
UPDATE transportMyBatis.Settlement SET fuel=6.4 WHERE id=1;
Teraz aktualizujemy zużycie paliwa na 100 kilometrów. Pozostałe identyfikatory pozostawiamy bez zmian.
Zapraszam do kolejnych artykułów rozliczenie pojazdu aplikacja.