Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Trigger dla INSERT.. problem składniowy, proszę o sugestie
mikajlo
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 13.12.2010

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


Witam,
jestem początkującym samoukiem i potrzebuję utworzyć trigger, który po wstawieniu danych do tabeli T1, wstawi jedną z wstawionych wartości do tabeli T2.
Z tym, że jeśli wartość ta jest null albo "" (czyli defacto pusta) ma nie wykonywać inserta..

Akutalnie wygląda to tak:

  1.  
  2. DELIMITER $$
  3. CREATE TRIGGER insertClub AFTER INSERT ON users
  4. FOR EACH ROW BEGIN
  5. SET @var = NEW.clubUser;
  6. IF (@var IS NOT NULL OR @var <> '') THEN
  7. INSERT INTO kluby (nameClub) VALUES(@var);
  8. END IF;
  9. END$$
  10. DELIMITER ;


I do tabeli T2 dodawane są nowe wartości.. ale są również dodawane wartości puste ( '' ) które nie mają być dodawane.. (ma po prostu nie robić tego kroku).

Pewnie jest jakiś niewielki błąd.. Średniozaawansowani nie będą pewnie na pierwszy rzut oka zauważą co jest nie tak..
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
alegorn
post
Post #2





Grupa: Zarejestrowani
Postów: 341
Pomógł: 40
Dołączył: 23.06.2009

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


nie lubie kategoryzowania.
stwierdzenie ze podział tabel na lata jest z punktu złe - nie do końca pokrywa się z prawdą.

potrafię sobie wyobrazić kilka istotnych powodów, dla których takie rozwiązanie ma sens << np generowanie raportów.

czy tutaj jest to dobrym rozwiązaniem? nie wiem. nie znam modelu aplikacji.

jedyna rada - to w procedurze która zakłada tabelę 'zawody_rok', dopisz automatycznie procedurę 'wyniki rok' skoro masz zawody - to musisz miec wyniki, generowanie tego w locie jest bez sensu.

j.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 08:15