![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 200 Pomógł: 16 Dołączył: 11.01.2009 Skąd: wrocław Ostrzeżenie: (0%) ![]() ![]() |
witam,
mam pytanie odnośnie usuwania danych z kilku tabel powiązanych między sobą na raz. mam taką strukturę: tabela Strony id_strona <- klucz główny tabela Aktualności id_aktualnosci <-klucz główny id_strony <-klucz obcy tabela Aktualności_pliki id_plik <- klucz główny id_aktualności <- klucz obcy teraz chcę usunąć stronę o danym id_strony muszę sprawdzić jakie aktualności są na tej stronie i czy do danej aktualności są dodane jakieś pliki. Czy mogę w jakiś sposób jednym zapytaniem czy strona ma jakieś aktualności a one jakieś pliki jeśli tak to wykorzystać je do usuwania rekordu? Czy jednak muszę zdobyć id_aktualności potem usunąć wszystkie pliki o tym id i dopiero potem usuwać wszystkie aktualności o danym id_strony. Czy da się w tym przypadku przy usuwaniu użyć join'a w którejkolwiek postaci? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Przy relacjach, oczywiście silnik InnoDB (chyba nie muszę wspominać) i kaskadowe usuwanie danych.
-------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 200 Pomógł: 16 Dołączył: 11.01.2009 Skąd: wrocław Ostrzeżenie: (0%) ![]() ![]() |
tak silnik oczywiście mam InnoDb
rozumiem że to w ustawieniach tabeli przy kluczach w opcji delete mam mieć ustawione cascade? czy w zapytaniu potem też dodtkowo coś muszę zawierać oprócz oczywiście id_strony ? jak miałoby wyglądać samo zapytanie? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
rozumiem że to w ustawieniach tabeli przy kluczach w opcji delete mam mieć ustawione cascade? Dobrze rozumiesz. czy w zapytaniu potem też dodtkowo coś muszę zawierać oprócz oczywiście id_strony ? jak miałoby wyglądać samo zapytanie? Wtedy, jeżeli usuniesz z tabeli strony, to wszystko co było powiązane zniknie automatycznie. -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 16:47 |