Hallo Freunde!
Ich bins wieder mal... heute mit etwas scheinbar trivialem, und zwar:
Ich hab eine Tabelle mit einem Feld "akitv" tinyint(1). nimmt den wert 0 oder 1 an, also einen booleschen wert. es soll in dieser tabelle aber immer nur einen DS geben, der nen 1 hat -> nur einen aktiven DS. Wollte das ganze über einen trigger machen, der folgend aussieht und geworfen wird, wenn ein anderes jahr aktiv gesetzt werden soll (also geworfen wird er immer, er tut nur etwas wenn ein inaktives jahr aktiv gesetzt wird):
problem ist natürlich, dass mir das vom trigger ausgeführte update zum inaktiv setzen des momentan aktiven jahres ebenfalls wieder den trigger aufrufen würde. es würde zwar nichts passieren, aber eine trigger rekursion wird von mySQL nicht zugelassen
ich denke, dass das sicher schon öfters aufgetaucht ist, nur anscheinend bring ich keine vernünftige google abfrage zusammen um was zu finden
Also bitte um Unterstützung und Danke für die Hilfe!!! LG
idsC
Ich bins wieder mal... heute mit etwas scheinbar trivialem, und zwar:
Ich hab eine Tabelle mit einem Feld "akitv" tinyint(1). nimmt den wert 0 oder 1 an, also einen booleschen wert. es soll in dieser tabelle aber immer nur einen DS geben, der nen 1 hat -> nur einen aktiven DS. Wollte das ganze über einen trigger machen, der folgend aussieht und geworfen wird, wenn ein anderes jahr aktiv gesetzt werden soll (also geworfen wird er immer, er tut nur etwas wenn ein inaktives jahr aktiv gesetzt wird):
Code:
CREATE DEFINER=`root`@`localhost` TRIGGER `db`.`tbl_jahr_bu_TR` BEFORE UPDATE ON `db`.`tbl_jahr` FOR EACH ROW begin if NEW.aktiv = 1 AND OLD.aktiv=0 THEN UPDATE tbl_jahr SET aktiv=0 WHERE aktiv=1; end if; end$$
ich denke, dass das sicher schon öfters aufgetaucht ist, nur anscheinend bring ich keine vernünftige google abfrage zusammen um was zu finden
Also bitte um Unterstützung und Danke für die Hilfe!!! LG
idsC
Comment