Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 15.09.2008 Ostrzeżenie: (0%)
|
Małe pytanie - jeżeli dla klucza podstawowego z numerem użytkownika ustawię opcję 'Auto Incremental' to czy:
1. Numeracja będzie się zmieniać automatycznie przy różnych operacjach (np. usunięciu użytkownika), tak, że wartości kolejnych rekordów będą zawsze tworzyć ciąg liczb naturalnych (1,2,3,...)? 2. Czy przy takich zmianach klucze obce w innych tabelach również będą się odpowiednio zmieniać? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 471 Pomógł: 89 Dołączył: 29.07.2008 Skąd: Warszawa Ostrzeżenie: (0%)
|
ok, ale przy takiej konkstrukcji bazy jaka mysle narzuca Twoj scenariusz, po zrobieniu delete cascade nie tyle zniklby produkt z faktur co zniklyby faktury ktore ten produkt mialy (IMG:style_emoticons/default/smile.gif) produkt z faktur zniklby nawet wtedy gdy cascade by nie bylo, a na dodatek mialbys spaprana baze bo faktury przy zlaczeni inner i tak by znikly
Kazdy kto kasuje rekordy w ten sposob o ktorym wspomniales zasluguje na pregierz i cascade niewiele tu zmienia, set null mogloby cos zmienic ewentualnie tzn. sprawic ze w pewnych warunkach byloby to dopuszczalne Program do faktur albo powinien byc zlaczany wiele-do-wielu z magazynem, wtedy kasujesz rekordy z tabeli zlaczajacej, a za skasowanie czegos z tabeli produktow masz dyscyplinarne zwolnienie z pracy(wtedy bez cascade uszkadzalbys wszystkie faktury, z cascade kasowalbys produkt z wszystkich faktur - same faktury dalej by istnialy i bylyby formalnie poprawne) (IMG:style_emoticons/default/smile.gif) , albo i tak powinien kopiowac wszystkie dane na fakture -> po to ze jak zmienisz nazwe produktu w magazynie to Ci wstecz wszystkich faktur nie miesza (IMG:style_emoticons/default/smile.gif) W przypadku drugim mozna pozostawic klucze obce wiele-do-wielu, ale raczej jako informacja dla admina bazy danych i wtedy w on delete powinno byc set null, a bez on delete znow masz burdel w bazie (IMG:style_emoticons/default/smile.gif) Ten post edytował yevaud 5.09.2010, 12:10:04 |
|
|
|
Kikert [MySQL] Autonumeracja a klucze obce 4.09.2010, 13:30:28
yevaud Cytat(Kikert @ 4.09.2010, 14:30:28 ) ... 4.09.2010, 13:33:30
cojack Stosując on delete, czy on update, można sobie sam... 4.09.2010, 22:12:35
Kikert Poczytałem trochę, podumałem, ale dalej nie jestem... 4.09.2010, 22:19:56
yevaud ON DELETE CASCADE
ON UPDATE CASDADE
CytatChciałby... 5.09.2010, 01:06:04
cojack Prosty przykład dlaczego nie:
Sklep, produkty, fa... 5.09.2010, 08:35:08
cojack Gdyby nie było on delete cascade, baza by Ci nie p... 5.09.2010, 14:33:07
Kikert I rozumiem, że to w tabeli str_message_receivers w... 5.09.2010, 19:47:25
nospor CytatStosując on delete, czy on update, można sobi... 6.09.2010, 11:01:32 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 18:57 |