Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Struktura tabeli dla dokumentów
misiek172
post
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.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
misiek172
post
Post #2





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Ogromne podziękowania za waszą pomoc. Macie duże piwa za to, jak was kiedyś poznam to zapraszam do pubu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Pozdrawiam, Łukasz.

edit:

kurcze stworzyłem baze z referencjami ON DELETE CASCADE

i nie ważne czy usune FV czy klienta i tak nie usuwa jedno drugiego, a według manuala opcja CASCADE, powinna dzialac tak ze jezeli usune FV, usunie się klient. Dlaczego tak nei jest? Jaka opcja jest na to ze jezeli faktura ma id klienta 1, to nie mozna klienta o takim id usunac z bazy?

Ten post edytował misiek172 26.09.2008, 13:41:57
Go to the top of the page
+Quote Post
piaseq
post
Post #3





Grupa: Zarejestrowani
Postów: 161
Pomógł: 25
Dołączył: 6.09.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(misiek172 @ 26.09.2008, 14:27:13 ) *
według manuala opcja CASCADE, powinna dzialac tak ze jezeli usune FV, usunie się klient. Dlaczego tak nei jest?

Chyba nie doczytałeś dokładnie. To działa od tabeli "podrzędnej" w twoim przypadku tabeli klientów do "nadrzędnej" czyli faktury. Więc poprawne działanie opcji CASCADE jest takie, że jeżeli usuniesz klienta zostanie usunięta faktura, nie odwrotnie

Cytat(misiek172 @ 26.09.2008, 14:27:13 ) *
Jaka opcja jest na to ze jezeli faktura ma id klienta 1, to nie mozna klienta o takim id usunac z bazy?

ON DELETE RESTRICT

edit

Tak na marginesie powinieneś zainteresować się prawnymi aspektami przechowywania faktur, a to dosyć obszerna dziedzina. Należałoby wziąć pod uwagę różne ograniczenia z tego wynikające, np.:
- nie można edytować faktury, można co najwyżej wystawić fakturę korygującą
- dane wprowadzone do faktury nie mogą ulec zmianie, tzn., że w przypadku np. zmiany adresu klienta na fakturze wystawionej przed zmianą musi pozostać stary adres
- i wiele, wiele innych.

Ten post edytował piaseq 26.09.2008, 21:03:28
Go to the top of the page
+Quote Post

Posty w temacie
- misiek172   Struktura tabeli dla dokumentów   24.09.2008, 14:56:40
- - krzyszbi   ja często robię tak ze mam podobne nazwy jak w for...   25.09.2008, 11:13:19
- - misiek172   Jeszcze dzisiaj spróbuje zaprojektować coś tym pro...   25.09.2008, 11:15:05
- - nospor   join jedynie łączy tabele ze sobą przy zapytaniu. ...   25.09.2008, 20:35:09
- - Mchl   W mySQL funkcjonalne relacje obsługuje InnoDB. W m...   25.09.2008, 20:44:30
- - misiek172   dzięki ślicznie bardzo mi pomogły wasze informacje...   26.09.2008, 10:52:32
- - phpion   Ale poszalałeś z kluczami głównymi zaleca się aby...   26.09.2008, 11:15:30
- - misiek172   one same mi się potworzyły gdy stworzyłem relacje,...   26.09.2008, 11:43:28
- - nospor   @phion to nie są klucze glowne a klucze obce glow...   26.09.2008, 11:47:36
|- - phpion   Cytat(nospor @ 26.09.2008, 12:47:36 )...   26.09.2008, 12:07:16
- - misiek172   mój projekt wgrałem do bazy, włączylem PMA i przet...   26.09.2008, 11:59:20
- - misiek172   w ten sposób? Projekt DB2   26.09.2008, 12:17:51
- - nospor   Cytatwedług informacji nospor z tego co zrozumiałe...   26.09.2008, 12:18:58
- - phpion   Cytat(misiek172 @ 26.09.2008, 13:17:5...   26.09.2008, 12:25:45
- - misiek172   Ogromne podziękowania za waszą pomoc. Ma...   26.09.2008, 13:27:13
|- - piaseq   Cytat(misiek172 @ 26.09.2008, 14:27:1...   26.09.2008, 20:53:15
|- - phpion   Cytat(misiek172 @ 26.09.2008, 14:27:1...   26.09.2008, 21:10:21
- - misiek172   niestety nie mam innego wyboru, ponieważ firm...   27.09.2008, 08:07:04


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 21:24