Rozliczenie pojazdu zapis do bazy. Zajmiemy się dodawaniem danych do tabel. Jest to nam potrzebne, do dalszych artykułów.
Rozliczenie pojazdu zapis – zapytania
Za zapis do bazy odpowiada instrukcja insert. Przykład zastosowania instrukcji insert to:
INSERT INTO [nazwa bazy].[nazwa tabeli] ([kolumna 1], [kolumna 2], ...) VALUES([wartość 1, [wartość 2], ...);
W przykładnie zastosowałem dwie kolumny i żyłem trzech kropek, które świadczą, że kolumn może być więcej. Jednak faktycznie najmniej może być jedna kolumna.
Tabela Person (osoba)
Dodajemy dane o osobie:
INSERT INTO transportMyBatis.Person (firstName, lastName) VALUES('Jan', 'Kowalski');
Jak pamiętamy ze wcześniejszego artykułu, tabela zawiera trzy kolumny a w naszym zapisie mamy tylko dwie. Wiemy jednak, że brakująca kolumna to Id. Kolumna Id jest kolumną tworzoną automatycznie, przy tworzeniu rekordu. Dlatego uzupełnianie jej nie jest potrzebne.
Tabela Vehicle (pojazd)
INSERT INTO transportMyBatis.Vehicle (idPerson, createDate, registrationNumber, mark) VALUES(1, '2020-04-12 17:34:51.0', 'LOM4521', 'Opel');
Tym razem również brakuje kolumny id, która utworzy się automatycznie. Mamy dodatkowo relacje do tabeli Person. Jak pamiętasz, IdPerson jest powiązany z tabelą Person. Wskazuje na pierwszego użytkownika aplikacji, czyli w naszym przypadku samochód należy do Jana Kowalskiego, jak wynika z utworzonego pierwszego wpisu do tabeli Person.
Tabela Ride (przejazd)
INSERT INTO transportMyBatis.Ride (idVehicle, createDate, rideDate, counterBefore, counterAfter, km, whence, `where`, rideKind, fuelCondition, fuelAdd, fuelAfter, fuelConsumed, fuelNorm) VALUES(1, '2020-04-12 17:34:51.0', '2020-04-12 00:00:00.0', 12200, 12346, 146, 'Łomża', 'Warszawa', 'Dojazd do pracy', 60, 0, 51.9, 8.1, 5,7);
Jak widzimy w tym zapisie, przejazd jest połączony z pojazdem (kolumna 1). W drugiej kolumnie mamy datę utworzenia wpisu. Trzecia kolumna to data przejazdu.
Kolejne trzy kolumny to stan początkowy licznika, stan końcowy i ilość przejechanych kilometrów. Następnie mamy dane dotyczące skąd jedziemy, gdzie i w jakim celu. Ostanie pięć kolumn dotyczy rozliczenia tankowania. Dziesiąta to stan początkowy paliwa, jedenasta ilość zatankowanych litrów a dwunasta to stan po zakończeniu przejazdu. Kolejna kolumna mówi, ile zużyliśmy paliwa, Ostania jest to zużycie na sto kilometrów.
Tabela Refuel (tankowanie)
INSERT INTO transportMyBatis.Refuel (idVehicle, idRide, createDate, refuelDate, name, counterBefore, counterAfter, km, refuel, price, value, fuelNorm) VALUES(0, 0, '', '', '', 0, 0, 0, 0, 0, 0, 0);
W kolumnie tankowanie przechowujemy wszystkie informacje związane z zakupem paliwa. Tabela jest powiązana z tabelami projazd i przejazd, w relacji jeden do wielu. Dodajemy również dany zakupu i datę utworzenia wpisu.
Teraz zaczyna się coś bardziej interesującego. Mianowicie stan licznika od ostatniego tankowania oraz stan licznika przy tankowaniu. Dzięki tym kolumnom możemy wyliczyć, ile przejechaliśmy kilometrów. Te dane będą nam potrzebne do wyliczenia zużycia paliwa w ostatniej kolumnie. Pozostałe kolumny to ilość zatankowanego paliwa, cena oraz wartość. Dzięki tym informacjom możemy określić, ponoszone koszty. Takie zestawienia przygotujemy w artykule pobieranie danych.
Tabela Settlement ()
INSERT INTO transportMyBatis.Settlement (idVehicle, idRide, idRefuel, createDate, fuel) VALUES(1,1, 1, '2020-04-12 17:34:51.0', 6.3);
Została już nam ostatnia tabela. Ta tabela przyda się nam przy rozliczeniach. Dzięki niej będziemy w stanie określić, ile kosztował nas każdy kurs.
Zapraszam do kolejnych artykułów rozliczenie pojazdu aplikacja.