Lista zadań nr 1

ADO.NET, cz. 1

Dane są tabele:

Ksiazka( Sygn INT PK, Autor VARCHAR(50), Tytul VARCHAR(50), IleStron INT )
Czytelnik( Pesel CHAR(11) PK, Imie VARCHAR(20), Nazwisko VARCHAR(40) )
Wypozyczenie(ID INT PK, Sygn INT REF Ksiazka, Pesel CHAR(11) REF Czytelnik, DataOd DATE, DataDo DATE, Oddana BOOL)

  1. Napisz program, który utworzy tabele Ksiazka, Czytelnik i Wypozyczenie. W przypadku, gdy jakaś tabela już istnieje, program powinien ją najpierw usunąć.
    [1p]
  2. Napisz program do importu danych bibliotecznych. Program jako parametry bierze nazwę pliku CSV i nazwę tabeli docelowej (książka, czytelnik lub wypożyczenie). W wyniku działania dane z pliku CSV powinny zostać zapisane do wskazanej tabeli. UWAGA: tabele nie muszą być puste. Dodatkowo:
    • Należy zadbać o poprawne zachowanie w przypadku próby wstawienia istniejących już w tabeli wierszy.
    • Należy także sensownie określić co będzie kluczem, jak wyglądają dane w plikach CSV (pliki CSV nie powinny zawierać kolumny klucza) i co to znaczy, że jakiś wiersz się powtarza (na poziomie bazy danych warto rozważyć klucz typu IDENTITY).
    • Należy również kontrolować zależności referencyjne.
    W razie jakichś niepowodzeń powinien powstać stosowny raport.
    [3p]
  3. Napisz program do eksportu danych bibliotecznych. Jako dane program bierze nazwę tabeli oraz typ wyniku, gdzie typem może być: csv, xml, screen. W wyniku generuje zawartość tabeli w odpowiednim formacie: czytelnym w postaci tabelki (screen), CSV (csv) lub XML (xml).
    [3p]
  4. Przygotuj testy, które porównają szybkość operacji SELECT (w tym prosty JOIN), INSERT, UPDATE i DELETE w modelu połączeniowym i bezpołączeniowym. Wyciągnij odpowiednie wnioski i przygotuj raport w arkuszu kalkulacyjnym (MS Excel, OpenOffice, Google Apps,...).
    [3p]