![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 656 Pomógł: 3 Dołączył: 26.10.2005 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam mała łamigłówkę i pomyślałem, że poproszę o pomoc bardziej doświadczonych w aplikacjach internetowych. Pisze program do księgowości i magazynowania, mam problem, jestem na etapie zaprojektowania tabeli baz danych dla dokumentów, zaczynam pierw od Faktury, cały formularz jest już gotowy. Problem leży w tym, że chce zrobić ją aby była jak najbardziej wygodna do zapisu i odczytu. Dane z faktury będą również używane przy innych dokumentach i odwrotnie, np. wystawianie Faktury na podstawie WZ (wydane na zewnątrz). Jak mają nazywać się kolumny w tabeli aby były wygodne? Tak jak pola w formularzu? Nie wiem jak dobrze wytłumaczyć mój problem. Ogółem proszę o zasugerowanie struktury tabeli w MySQL dla przechowywanie dokumentów. Pozdrawiam, Łukasz. PS: Jak najlepiej przechowywać tablice w MySQL? Serialize odpada bo nie potrzebnie dużo zajmuje i krzaczy się ze znakami typu: " \ etc. -------------------- zmoderowano - waga i rozmiar
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
join jedynie łączy tabele ze sobą przy zapytaniu.
Relację służa temu, iż jawnie mówisz, ze ta tabela jest powiązana z tą poprzez takie a takie pole. przyklad: W fakturze masz fkuser, ktore odnosi sie do tabeli user. dzieki temu w fakturze trzymasz tylko identyfikator user. wszystkie jego dane leża w oddzielnej tabeli. zakladasz relacje. dzieki temu możesz powiedziec, ze nie wolno usunać danego usera, jesli ma on wpis w jakiejs fakturze. Tego pilnuje ci baza, ty nie musisz sie martwic. Jak bedziesz probowal usunac usera, ktory juz jest w fakturze to baza wypluje ci errora. kolejny przyklad: user pisze komentarze. w tabeli komentarzy masz znowu fkuser. zakladasz relacje i mowisz, ze gdy dany user zostanie usuniety, to mają zostac usuniete rowniez jego komentarze. I znowu zrobi to za ciebie baza. ty tylko usuwasz usera, a baza robi reszte - usuwa komentarze. Podsumowując: relacje pomagają zarządzac baza, niedopuszczają do dziwnych sytuacji, ze np. masz komentarze z przypisanym id usera ktory juz nie istnieje. Dobre założenie relacji naprawdę uproszcza wiele rzeczy. Oczywiscie relacje nie zrobią za ciebie pobrania informacji o userze przy wyswietlaniu komentarza - nadal musisz uzyc join Co do faktury to zakladasz takie pola, jakie ma faktura. Moze sie to pokrywac z polami z forma i zazwyczaj tak jest. A po co cie serializowac tablice i zapisywac do bazy to nie wiem. nie powinno sie tego robic. Na takich danych nie mozna robic zadnych sensownych operacji ps: troche haotycznie mi to wyszlo, ale jestem zmeczony dzis tym liczeniem postow przy akcji z pomogl ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 14:24 |