ďťż
Podstrony
|
telcocafeWitam,Mam zadanie do szkoły z baz danych. Wymyśliłem wydaje mi się poprawną do niego bazę danych. Tylko teraz nie wiem jak zapisać ta baze w SQL. Znaczy zapisać po przez CREATE to jeszcze nie taki problem, ale muszę zaznaczyć w niej więzy integralności, a nie moge sobie z tym poradzic w SQL. Czy mogę prosić z tym o pomoc, jak to ma wyglądać? Moja baza: Klienci (Id_klienta, Nazwisko, Imię, Nr_dok_tozsamosci) //klucz Id_klienta Pokoje (Nr_pokoju, Liczba_miejsc, Cena, Opis) //klucz Nr_pokoju Rezerwacje (Id_rezerwacji, Id_klienta, Nr_pokoju, Data_start, Data_end) //klucz Id_rezerwacji Mieszkancy(Id_mieszkanca Id_klienta, Nr_pokoju, Data_start, Data_end) //Id_mieszkanca -------- Treść zdania: Zaprojektuj bazę danych umożliwiającą obsługę hotelu. Baza powinna umożliwiać przechowywanie i przetwarzanie takich informacji jak: - opis pokoi (liczba miejsc, standard, cena) - lista mieszkańców (kto mieszka, od kiedy, do kiedy) - lista rezerwacji (kto rezerwuje, od kiedy, do kiedy) Baza ma być tak zaprojektowana, aby nie tracić informacji, tzn. jeśli klient wymeldował się z hotelu, to ma zostać informacja o tym, kiedy i w jakim pokoju mieszkał. Oddawany plik o nazwie hotel.sql powinien zawierać: definicję tabel i relacji pomiędzy nimi. -------- W czym masz stworzyć bazę danych? W Accessie? W wielu silnikach istnieją klucze obce. W MySQL tylko w tabelach o typie InnoDB. W Accessie jest trochę inaczej. Zajrzyj do oficjalnych przewodników: http://office.micros...1205341045.aspx Witam. Dzięki za odpowiedź. Tak, wlasnie mi chodzi o InnoB, mam to zapisac w czystym jezyku SQL (wiec chyba, w Mysql bedzie dzialac), nie w Accessie. Ta baze rozpisalem na kartce. U mnie klucze obce to: Id_klienta w tabeli Rezerwacje i Mieszkancy i Nr_pokoju w Rezerwacje i Mieszkancy. Chcialbym zeby to bylo odpowiednio powiazane zeby bylo to spojne. Bo chyba jak nazwe tylko tak samo atrybut w jednej i drugiej tabeli, to nie zadziala Tutaj są przykłady: FOREIGN KEY Musisz wiedzieć, która tabela jest nadrzędna. Napisz teraz zapytania, a my je sprawdzimy. Skorzystaj z oficjalnej dokumentacji MySQL lub informacji na blogach poświęconym stworzeniem aplikacji internetowych. Podpowiedź: pamiętaj o słowie REFERENCES oraz akcjach, które baza ma wykonać przy zmianie wartości kluczy obcych.FOREIGN KEY (pole1, pole2) REFERENCES nazwa_nadrzednej_tabeli(pole1, pole2) ON UPDATE [akcja] A jeśli jesteś leniwy to zainstaluj sobie phpMyAdmin (lub pakiet Vertrigo, który zawiera serwer mysql oraz phpmyadmiin) i stworzenie takiej tabeli zajmie Ci ze 20 minut :) |
|||
Sitedesign by AltusUmbrae. |