![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 2.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
W tabeli Users mam takie kolumny: Id | User_name czyli w praktyce np: Cytat Id | User_name 1 | Jan_Kowalski 2 | Jan_Nowak A w tabeli Arts mam takie kolumny: Id | Art_id | User_name czyli w praktyce np: Cytat Id | Art_id | User_name 1 | 1 | Jan_Kowalski 2 | 2 | Jan_Nowak Chciałbym aby w tej drugiej tabeli - Arts w kolumenie User_name nie było nazwy użytkownika, tylko jego Id z tabeli Users. czyli w praktyce np: Cytat Id | Art_id | User_name 1 | 1 | 1 2 | 2 | 2 Jak to zrobić? Ten post edytował stefan86 12.03.2013, 14:14:49 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 3 Dołączył: 18.08.2011 Skąd: Chrzanów Ostrzeżenie: (0%) ![]() ![]() |
Tworzysz sobie zamiast User_name np "Users_id" i tam wrzucasz id z tabeli User jeżeli tabele są na innoDB to możesz dodatkowo zrobić pole Users_id jako klucz obcy wtedy sama baza danych będzie "pilnować" żeby tam znalazł się jakiś numer z tabeli Users z pola Id
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 2.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witaj.
Dzięki za odpowiedź. Tworzysz sobie zamiast User_name np "Users_id" i tam wrzucasz id z tabeli User Ja właśnie chcę w tabeli Arts zmienić nazwę użytkownika (autora danego artykułu) na jego ID z tabeli User. Artykułów jest ponad 50 tys. ogólnie napisało ich nieco ponad 20 tys. użytkowników. Ręcznie sprawdzanie jakie ID ma dany Użytkownik w tabeli Users i zamienianie jego nazwy użytkownika na jego ID przy każdym jego artykule w tabeli Arts będzie trudne do wykonania. Dlatego chcę się dowiedzieć czy można to zrobić jakoś automatycznie. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 2.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cześć.
Dzięki za odpowiedź
Dokładnie o takie coś mi chodziło! Wielkie dzięki. Łap plusika. Musiałem tylko zmienić Arts.Users_name=Users.User_name na Arts.User_name=Users.User_name bo ja mam tam tabelę User a nie Users. Tylko jest taka sprawa - da się jakoś zoptymalizować to zapytanie? Długo się wykonywało i w końcu wywaliło błąd Internal Server Error 500, jak sprawdzałem to wykonało gdzieś tak ok. 3/4 z całości. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
W obu tabelach index na to pole.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 09:00 |