Inkasenci/main — pull request #31 by paldir (2014-04-19 12:14:29+00:00)
Title: Kaskadowane usuwanie terenu

Nazwa gałęzi myląca (pomijając literówkę), bo zająłem się usuwaniem wszystkich rekordów.

Przy usunięciu inkasenta wszystkie jego tereny mają null jako idInkasenta, a odczyty danego inkasenta są kasowane.

Przy usunięciu klienta wszystkie jego liczniki mają null jako idKlienta i idAdresu, bo ustaliliśmy z Rafałem, że albo oba te pola mają być wypełnione albo oba puste. Ale oczywiście można to zmienić.

Przy usunięciu licznika usuwane są też wszystkie jego odczyty.

Przy usunięciu adresu wszystkie liczniki, które się pod nim znajdowały mają null jako idAdres i idKlienta, analogia do usuwania klienta.

Przy usunięciu terenu usuwane są również adresy, które do niego należały, bo ciężko, żeby był adres bez ulicy. Usunięcie tych adresów ma takie same konsekwencje jak usunięcie ich ręcznie, czyli odpowiednie pola liczników są nullowane.

Do metody usuwającej dodałem parametr, który przyjmuje true, jeśli klucz usuwanego rekordu jest kluczem obcym w innej tabeli i trzeba na nią również podziałać.