sua trigger que gera os dados da OnlineHours está correta, gerando normalmente?

pelo que vejo sua Job está certinha, só que se não houver valor inteiro na sua coluna, ele não vai dar nada mesmo...

obs: mude sua Job... ta pra 2 horas, altere para este

UPDATE Memb_Info SET
gold= gold + 2,
OnlineHours = OnlineHours - 1 FROM Memb_Info JOIN Memb_Stat ON Memb_Info.memb___id = Memb_Stat.memb___id WHERE Memb_Stat.OnlineHours >= 1;