Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL][MySQL] Logiczny problem z baza
eminiasty
post
Post #1





Grupa: Zarejestrowani
Postów: 267
Pomógł: 0
Dołączył: 11.09.2015

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


Mam tabele powiązane relacjami:
--uczestnicy
id_uczestnika
--szkolenia
id_skzolenia
--szkolenia_uczestnicy
id_szkolenia
id_uczestnika

Znam tylko id_szkolenia, chce usunac wszelkie dane powiazane z szkoleniem(z każdej tabeli)

Co robię obecnie:
1.Usuwam dane z szkolenia uczestnicy
2.Usuwam dane z szkolenia
3 TU problem? Jak usunac z uczestnicy

Problem tu jest z kolejnością usunięcia wszystkich danych
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Co do problemu nr 3:
  1. DELETE FROM uczestnicy WHERE id_uczestnika NOT IN (SELECT DISTINCT id_uczestnika FROM szkolenia_uczestnicy)

lub:
  1. DELETE FROM uczestnicy WHERE NOT EXISTS (SELECT 1 FROM szkolenia_uczestnicy WHERE szkolenia_uczestnicy.id_uczestnika = uczestnicy.id_uczestnika)

plus kilka innych sposobów np. z użyciem left join ale tu sobie sam googlnij (IMG:style_emoticons/default/smile.gif)

@viking: nawet z kluczem obcym rekordy uczestników nie zostaną usunięte.
Go to the top of the page
+Quote Post

Posty w temacie


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: 15.10.2025 - 09:21