Laboratorium 3: Bazy danych - Konstruowanie prostej bazy danych
Transkrypt
Laboratorium 3: Bazy danych - Konstruowanie prostej bazy danych
Laboratorium 3: Bazy danych - Konstruowanie prostej bazy danych dr inż. Marcin Witczak Instytut Sterowania i Systemów Informatycznych, Uniwersytet Zielonogórski 1 Wybieranie odpowiednich komponentów W celu pobrania i połaczenia ˛ odpowiednich komponentów należy wykonać nast˛epujace ˛ czynności: 1. Otworzyć projekt aplikacji wykonany na Laboratorium 2. 2. Z menu File|New wybrać opcj˛e DataModule DataModule - Moduł danych może być traktowany jako niewizualny formularz przeznaczony do „przechowywania” komponentów zwiazanych ˛ z bazami danych. Jego wykorzystanie umożliwia łatwy dost˛ep do danych z punktu widzenia dowolnego formularza aplikacji. 3. Modułowi danych nadać nazw˛e DM_Dane i zapisać go w pliku o nazwie Dane. 4. Z zakładki DataAccess wybrać komponent DataSource i umieścić go na module danych, a nast˛epnie nadać mu nazw˛e DS_Dane. 5. Z zakładki BDE wybrać komponent Table i umieścić go na module danych, a nast˛epnie nadać mu nazw˛e T_Dane (Uwaga!!! W wersjach DELPHI poniżej 6 powyższy komponent znajduje si˛e na zakładce DataAccess). 2 Tworzenie i integracja tabeli W celu utworzenia tabeli mogacej ˛ przechowywać telefony wraz z danymi osób, a nast˛epnie jej zintegrowanie z programem należy wykonać nast˛epujace ˛ czynności: 1. Uruchomić program DataBase Desktop. 2. Wybrać z menu File|New opcj˛e Table. 3. Utworzyć tabel˛e zgodna˛ ze standardem Paradox. 4. Wprowadzić nast˛epujace ˛ pola tabeli: ID : typu Autoincrement. Pole kluczowe (Pole Key powinno zawierać *), jednoznacznie identyfikujace ˛ dany rekord. Imie: typu Alpha o długości 10. Nazwisko: typu Alpha o długości 15. NrTele: typu Alpha o długości 15. Miejscowosc: typu Alpha o długości 30. Adres: typu Alpha o długości 40. 5. Zapisać tabel˛e w tym samym katalogu, w którym znajduje si˛e projekt pod nazwa˛ telefony. 6. W module danych wybrać komponent o nazwie T_Dane. W polu DataBaseName wprowadzić ścieżk˛e dost˛epu do pliku z tabela˛ (bez nazwy pliku). Nast˛epnie, w polu TableName wpisać nazw˛e tabeli, czyli Telefony. (Uwaga!!! Jeżeli ścieżka dost˛epu jest podana poprawnie to nazwa ta powinna si˛e pojawić automatycznie po rozwini˛eciu pola TableName). 1 7. Właściwość Active komponentu T_Dane ustawić na wartość true. 8. W module danych wybrać komponent on nazwie DS_Dane. W polu DataSet powyższego komponentu wybrać wartość T_Dane. 9. W modułach Telefony i Edycja wprowadzić instrukcje umożliwiajace ˛ „użycie” modułu danych. 10. Przejść do modułu Telefony. Wybrać komponent DBG_Dane, a nast˛epnie w właściwości DataSource przypisać odpowiednia˛ wartość. 11. Przejść, do modułu Edycja. Kolejno wybrać komponenty edycyjne, nadajac ˛ im odpowiednie wartości w polach DataSource i DataField. 3 Programowanie elementów nawigacyjnych aplikacji W celu umożliwienia wprowadzania, edycji, usuwania i poruszania si˛e po zbiorze danych należy wykonać nast˛epujace ˛ czynności: 1. Przejść do modułu Telefony. 2. W procedurze obsługi zdarzenia polegajacego ˛ na naciśni˛eciu przycisku Dodaj wprowadzić nast˛epujacy ˛ kod: DM_Dane.T_Dane.Insert; if F_Edycja.ShowModal=mrOK then DM_Dane.T_Dane.Post else DM_Dane.T_Dane.Cancel; 3. W procedurze obsługi zdarzenia polegajacego ˛ na naciśni˛eciu przycisku Edycja wprowadzić nast˛epujacy ˛ kod: if DM_Dane.T_Dane.RecordCount=0 then begin ShowMessage(’Brak danych do edycji!’); Exit; end; DM_Dane.T_Dane.Edit; if F_Edycja.ShowModal=mrOK then DM_Dane.T_Dane.Post else DM_Dane.T_Dane.Cancel; 4. W procedurze obsługi zdarzenia polegajacego ˛ na naciśni˛eciu przycisku Nastêpny wprowadzić nast˛epujacy ˛ kod: if DM_Dane.T_Dane.RecordCount=0 then else DM_Dane.T_Dane.Next; ShowMessage(’Brak danych!’) 5. W procedurze obsługi zdarzenia polegajacego ˛ na naciśni˛eciu przycisku Poprzedni wprowadzić nast˛epujacy ˛ kod: if DM_Dane.T_Dane.RecordCount=0 then else DM_Dane.T_Dane.Prior; ShowMessage(’Brak danych!’) 6. W procedurze obsługi zdarzenia polegajacego ˛ na naciśni˛eciu przycisku Usuñ wprowadzić nast˛epujacy ˛ kod: if DM_Dane.T_Dane.RecordCount=0 then else DM_Dane.T_Dane.Delete; 7. Uruchomić i przetestować działanie aplikacji. 2 ShowMessage(’Brak danych!’)