Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Trigger - jak wykonac - dla MyBB.
calif
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 24.08.2009

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


Witam!

Potrzebuję Trigger'a (chyba tak to się nazywa), który robiłby taką coś:

Gdy ktoś rejestruje się na forum MyBB - czyli zostaje dodany rekord do tabeli mybb_users, trigger reaguje i dopisuje tego samego użytkownika (rekord) do innej tabeli.

Tak, abym mógł zainstalować większą ilość for na jednej bazie danych, aby na wszystkich forach byli Ci sami użytkownicy.

Przypuśćmy jedna tabela z ludźmi to: mybb_users, a druga to mybb1_users, kolejna mybb2_users itp. itd.

Jak to zrobić?

Pozdrawiam!
calif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
everth
post
Post #2





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

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


Tworzysz wyzwalacze dla AFTER DELETE, AFTER UPDATE. Wzorzec masz. Do wygenerowania i zarządzania triggerami dla większej ilości tabel możesz sobie napisać jakiś skrypt (np. w PHPie). Jedyne co zmieniasz to nazwy triggerów i tabel na których operują. Pamiętaj żeby dla triggera AFTER DELETE zmienić warunek z IF NOT EXISTS na IF EXISTS.

Jak chcesz dodać nową tabelę to oznacz sobie sobie trigger na ostatniej tabeli np. dopiskiem last - wtedy przy dodawaniu kolejnej tabeli do konfiguracji po prostu usuwasz go usuwasz (tabela ostatnia staje się przedostatnią). Rekonstruujesz triggery na dwóch ostatnich tabelach - tak żeby przedostatnia wskazywała na ostatnią, a ta z kolei na pierwszą (wtedy na ostatniej jest trigger last). Przy usuwaniu tabeli z czegoś takiego musisz zrekonstruować wskaźnik na tabeli poprzedzającej by wskazywał na właściwą (czyli jak mamy 1->2->3->1 i usuwamy 2, to ma być 1->3->1). To jest coś jak lista jednokierunkowa.

Tu masz wszystko o triggerach w MySQL.
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: 2.10.2025 - 19:09