![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 303 Pomógł: 1 Dołączył: 24.09.2011 Ostrzeżenie: (10%) ![]() ![]() |
Witam mam strukture tabel jak ponizej. Problem w tym ze gdy probuje dodac jakiegos uzytkownika do tej struktury za pmoca insertow ponizej mam 0 w polach `dane_users_id` i `users_dane_id` czyli tam gdzie powinny byc powiazania relacjyjne? Powie mi ktos co robie zle lub wskaze jakis przyklad na ktorym moglbym sie zawzrorowac zeby wykonac cos podobnego czyli relacja pomiedzy dwiema tabelami i wpisanie do bazy.
Ten post edytował viamarimar 12.02.2015, 15:54:06 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 113 Pomógł: 18 Dołączył: 7.10.2007 Skąd: Pruszków Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze masz małą ilość kolumn w jednej i drugiej tabeli więc ja bym to wszystko w jednej tabeli.
Po drugie jak już robisz relację to po co tak? Cytat ALTER TABLE `wpl_dane` ADD CONSTRAINT `fk_users` FOREIGN KEY (`dane_users_id`) REFERENCES `wpl_users` (`users_id`); -- -- Ograniczenia dla tabeli `wpl_users` -- ALTER TABLE `wpl_users` ADD CONSTRAINT `wpl_users_ibfk_1` FOREIGN KEY (`users_dane_id`) REFERENCES `wpl_dane` (`dane_id`); Robisz relację z pierwszej tabeli do drugiej a potem z drugiej do pierwszej ![]() Jak się uparłeś że to ma być w dwóch tabelach to moim zdaniem powinna tu być relacja 1:1 i wystarczy tylko jeden Foreign Key Wracając do pytania To proponuję zrobić tak: Dodaj na kluczach głównych UNSIGNED co sprawi że będą mogły być tam tylko liczby dodatnie W insertach nie podawaj kolumny która jest FK (mają przecież auto_increment). Wywal z tabeli z users kolumnę i klucz do tabeli dane Zakładam że login i hasło jest unikalne.
I taka rada na koniec - nie dodawaj żmienne do SQL bezpośrednio z formularza bo ktoś Ci bazę danych zniszczy. Poczytaj o PDO w manualu PHP -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 14:20 |