![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
dobry wieczór potrzebuje zrobić baze w której jedna z tabel liczyła by 30 pół... na innym forum pytałem się czy nie dało by rady z takiej jednej tabeli rozmieścić danych do paru tabel w odpowiedzi dostałem odpowiedz "klucz obcy" zrobiłem 2 tabele aby sprawdzić aż pewien user napisął mi że gdy w tabeli A mam np id_konta i parę innych pól to w tabeli B nie zostanie utworzony rekord z takim samym id jak w tabeli A. jak to jest ? :| chciałbym tabele z 32 polami podzielić na 3 jak to zrobić i czy w ogóle jest sens.. z góry dziękuje
|
|
|
![]()
Post
#2
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Tabela_A
id_rekordu_A pole1 pole2 ... Tabela_B id_rekordu_B id_rekordu_A pole1 pole2 .... Tabela C id_rekordu_C id_rekordu_A pole1 pole2 .... Wybranie danych z trzech tabel dla pojedyńczego wpisu (rozbitego na trzy tabele - jedna z mozliwości):
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
dzięki że w ogóle odpowiedziałeś ale nie o to mi chodziło (choć napewno się przyda) chodzi mi o to że chciałbym zrobić aby user Nowak miał swoje dane w 3 tabelach tzn w 1 np dane typu login haslo email w innej adres a w 3 bardziej szczegółowe dane. i tutaj pojawia się moje pytanie jak to zrobić ...
|
|
|
![]()
Post
#4
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
users
user_id user_login user_passwd ... user_contact_data ucd_id user_id user_email user_gg user_skype user_www .... user_location_data uld_id user_id user_street user_street_number user_city user_zip ... user_identification_data ui_id user_id user_pesel user_nip user_regon .... Czyli dokładnie tak, jak napisałem Ci w piewrszym poście, tylko nazwy tabel i pól były przykładowe |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
dzięki blooregard że próbujesz mi pomoc lecz źle się wyraziłem :/ chodzi o to aby przy rejestracji w równych tabelach były dane 1 usera. jest to możliwe (IMG:style_emoticons/default/questionmark.gif) jeśli tak to jak (IMG:style_emoticons/default/smile.gif) teoretycznie wydaje mi się ze poprostu dodaje nowy rekord do paru tabeli i id tego rekordu jest podporządkowane do 1 usera ale co jeśli np wywali jakiś błąd i do którejś tabeli nei doda (IMG:style_emoticons/default/questionmark.gif) wszystko sie powali bo kolejny user to będzie miał w 3 tabelach np id 300 a w czwartej tabeli id 299. przynajmniej tak mi się wydaje (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 1 Dołączył: 9.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
blooregard przecież dobrze napisał (IMG:style_emoticons/default/cool.gif)
users user_id <---- wartość unikatowa dla całej tabeli user_login user_passwd ... user_contact_data ucd_id <---- wartość unikatowa dla całej tabeli user_id <---- wartość taka sama jak users.user_id user_email user_gg user_skype user_www .... user_location_data uld_id <---- wartość unikatowa dla całej tabeli user_id <---- wartość taka sama jak users.user_id user_street user_street_number user_city user_zip ... user_identification_data ui_id <---- wartość unikatowa dla całej tabeli user_id <---- wartość taka sama jak users.user_id user_pesel user_nip user_regon .... A więc ucd_id,uld_id,ui_id mogą być ustawiane automatycznie i mogą być inne niż user_id a user_id jest ustawiany przez Ciebie, w zależności od tego czyje dane zapisujesz. Kolumnę users.user_id łączysz z kolumnami z innych tabel na podstawie np user_contact_data.user_id a nie user_contact_data.ucd_id No, i to jest to co chciałeś (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 98 Pomógł: 0 Dołączył: 18.03.2008 Skąd: Olsztyn Ostrzeżenie: (20%) ![]() ![]() |
users.user_id ----> user_contact_data.user_id
users.user_id ----> user_location_data.user_id users.user_id ----> user_identification_data.user_id To są właśnie moim zdaniem prawidłowo zbudowane relacje pomiędzy tabelami. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 00:37 |