A trigger tudni, hogy melyik mezők frissülnek
Ott előtt Insert ravaszt egy asztalhoz. Meg kell vizsgálni, hogy a field1 mező nem változott.
Hogyan kell helyesen csinálni?
Megpróbálom ezt:
new.field1 <> old.field1.
Ez a kialakítás jól működik, de ha a régi vagy az új értéke null, akkor nem akar.
> De ha a régi vagy az új értéke null, akkor nem akar.
Hmm. És ellenőrizze ezt a feltételt kiváltja a vallás nem engedi?
Milyen más vallás?
Részletesebben:
1.
# XA0; // new.filed1 = "hello";
# XA0; // old.filed1 = "hosszú";
# XA0, ha (new.field1 <> old.field1), majd
# XA0; kezdődik
# XA0; # XA0; // ebben az esetben esik ebbe a blokkba
# XA0; end
2.
# XA0; // new.filed1 = "hello";
# XA0; // old.filed1 = null;
# XA0, ha (new.field1 <> old.field1), majd
# XA0; kezdődik
# XA0; # XA0; // ebben az esetben nem tartoznak ide.
# XA0; # XA0; // kell lennie
# XA0; end
3.
# XA0; // new.filed1 = null;
# XA0; // old.filed1 = "hosszú";
# XA0, ha (new.field1 <> old.field1), majd
# XA0; kezdődik
# XA0; # XA0; // ebben az esetben is, nem találkoznak itt.
# XA0; # XA0; // kell lennie
# XA0; end
Gyanítom, nem lehet összehasonlítani a null értéket bármilyen típusú, mint null ellenőrzést végzünk a szerkezet null.
Úgyhogy azt kérdezi, hogy tudod, hogy a mező megváltozott érték, nem számít, mi volt, és mi volt (I null-érték).
Ez körülbelül ellenőrzése null:
# XA0, ha (new.field1 <> old.field1) vagy
((New.field1 null és nem old.field1 nulla), vagy
(Old.field1 null és nem new.field1 nulla)), majd
kezdődik
[2] Sour # XA0; (18.02.05 11,25)
> Gyanítom nem lehet összehasonlítani a null értéket bármilyen típusú, mint null ellenőrzést végzünk a szerkezet null.
De lehetséges, hogy ellenőrizze, hogy a NULL.
Ha (old.field nulla) és (new.field nem Null) akkor.
1)
ha
# XA0 (new.field1 IS NULL) AND NOT (old.field1 IS NULL) OR
# XA0; NOT (new.field1 IS NULL) AND (old.field1 IS NULL) OR
# XA0; (new.field1 <> old.field1)
majd
# XA0; megváltozott
2)
ha
# XA0; NOT (
# XA0; # XA0 (new.field1 IS NULL) AND (old.field1 IS NULL) OR
# XA0; # XA0; (new.field1 = old.field1)
# XA0;)
majd
# XA0; megváltozott
és ha, mint ez?
if ((összeolvadnak (old.naim, "- 1"))<>(Összeolvadnak (new.naum, "- 1"))), majd