Balandis
17
2008

Trigeriai MySQL

Sukelti ar suaktyvinti yra įvykis, kuris yra vykdomas, kai jūs atliekate ieškinį dėl tam tikros lentelės. Ar patogu Pavyzdžiui, jei norite įterpti lentelės duomenis automatiškai nukopijuotus duomenis šiek tiek kitą. MySQL, ši funkcija nuo versijos 5.0.

Norėdami sukurti priežastį, prieš turime lenteles, sukurtas. Kai tai padarysite, mes vadovauja į lentelę, dėl kurių kontrolė, ar tam tikras veiksmas buvo atliktas. Taikomoji atvejo tyrimą, siekiant geriau suprasti, turime lygą, kur Žaidžiama, šie žaidimai bus nustatyti klasifikaciją, taip, kad kai įdedate žaidimą paleisti spragtuką, atnaujinti duomenis apie jūsų kompiuterius: laimėjo žaidimai, žaidimai Pamesti, tikslai ir pan.

Na, mes lentelėje, kur mes matome savo struktūrą. Tiesiog virš SQL skirtukas pasirodo, mes spustelėkite. Mes įkelti kitą puslapį, kur mes turime rašyti sukelti kodą. Svarbu įdėti kaip skyriklis "|", be dvigubų kabučių, nes kitaip, tai yra gana tikėtina, kad mes klaida. Leiskite mums kreiptis į, pavyzdžiui, kaip matyti aiškiau:




-------------------------

CREATE TRIGGER PRIEŠ dedamą informaciją apie actualizarequipos šalių

Kiekvienam

EILĖ

pradėti

NEW.golesl JEI> TADA NEW.golesv

UPDATE komandos SET +1 WHERE pg = pg, = NEW.idel idequipo;

UPDATE komandos SET taškų = balai 3, KUR idequipo = NEW.idel;

UPDATE komandos SET GF = GF + kur NEW.golesl idequipo = NEW.idel;

UPDATE komandos SET gc = gc + kur NEW.golesv idequipo = NEW.idel;

Atnaujinti grupes, KUR Pp = p 1 = NEW.idev idequipo;

UPDATE komandos SET GF = GF + kur NEW.golesv idequipo = NEW.idev;

UPDATE komandos SET gc = gc + kur NEW.golesl idequipo = NEW.idev;

end if;

, JEI NEW.golesl <NEW.golesv TADA

UPDATE komandos SET taškų = balai 3, KUR idequipo = NEW.idev;

UPDATE komandos SET +1 WHERE pg = pg, = NEW.idev idequipo;

UPDATE komandos SET GF = GF + kur NEW.golesv idequipo = NEW.idev;

UPDATE komandos SET gc = gc + kur NEW.golesl idequipo = NEW.idev;

Atnaujinti grupes, KUR Pp = p 1 = NEW.idel idequipo;

UPDATE komandos SET GF = GF + kur NEW.golesl idequipo = NEW.idel;

UPDATE komandos SET gc = gc + kur NEW.golesv idequipo = NEW.idel;

end if;

Jei tuomet NEW.golesl = NEW.golesv

UPDATE komandos SET PE = PE +1 KUR idequipo = NEW.idev;

UPDATE komandos SET taškai = taškų +1, KUR idequipo = NEW.idev,;

UPDATE komandos SET taškai = taškų +1, KUR idequipo = NEW.idel,;

UPDATE komandos SET GF = GF + kur NEW.golesv idequipo = NEW.idev;

UPDATE komandos SET gc = gc + kur NEW.golesl idequipo = NEW.idev;

UPDATE komandos SET PE = PE +1 KUR idequipo = NEW.idel;

UPDATE komandos SET GF = GF + kur NEW.golesl idequipo = NEW.idel;

UPDATE komandos SET gc = gc + kur NEW.golesv idequipo = NEW.idel;

end if;

pabaiga

-------------------------

Operacija:

1. Sukurti gaiduką pavadintą "actualizarequipos".

2. Su PRIEŠ įstatymui į rungtynes ​​tikrintinas prieš įvesti duomenis.

3. Su kiekvienoje eilutėje eina per kiekvieną tuple eilutė) įrangos patikrinti savo ID, kad atitiktų komandų, ginčydami žaidimą.

4. , Jei patikrina, ar rezultatas yra laimėti, lygiosios ar pralaimėjimas kiekvienai komandai, NAUJAS. įvestų duomenų, ty, tikslus, buvo pristatytos partijos.

5. UPDATE atnaujina visus duomenis, esančius jūsų kompiuteryje, atsižvelgiant į rezultatus ir tikslus.

6. Galiausiai, įvedus duomenis atnaujinamas tų grupių duomenis, ir su šios užklausos gali žinoti klasifikaciją:


SELECT * FROM ORDER BY Taškai DESC įranga, GF DESC



Išrenka visus duomenis lentelės grupių ir užima pirmąją vietą pagal taškus, ir jei jūs turite juos, įvarčių.

MySQL

Palikite komentarą

"Facebook"

Kategorijos

Žymos

Vertėjas

Spanish flagItalian flagChinese (Simplified) flagPortuguese flagEnglish flagGerman flagFrench flagJapanese flagArabic flag
Russian flagGreek flagDutch flagCzech flagDanish flagFinnish flagPolish flagRomanian flagSwedish flag
Norwegian flagLithuanian flagSerbian flagSlovak flagSlovenian flagEstonian flagTurkish flagHungarian flagIcelandic flag