Blz ? Então, primeira coisa “programação php” falando de codificação interna no database Oracle ABSOLUTAMENTE NÃO FAZ SENTIDO : assim, vou SUPOR que na verdade foi um erro de DIGITAÇÃO e na verdade vc quis dizer PL/SQL (que é a linguagem procedural nativa do RDBMS ORACLE), não PHP….
Muito bem : programando em PL/SQL uma idéia básica sim, seria criar um trigger : esse teu exemplo tá perto da sintaxe correta mas Não Chegou Lá… Supondo que a tabela se chama mesmo WO_USERS , a coluna a popular um valor nessa mesma tabela se chama WALLET e a coluna com a informação original se chama BALANCE, o comando ficaria :
create trigger TRG_WALLET before update on WO_USERS for each row
BEGIN
:NEW.wallet := :NEW.balance;
END;
e é isso – dá uma estudada nos manuais de PL/SQL para ficar por dentro dos detalhes que adicionei, como o bloco BEGIN/END (sempre Obrigatório), o uso do ‘:=’ para atribuir um valor (e não o ‘=’ simples), o conceito de array de valores NEW e OLD com os valores a manipular na trigger….
[]s
Chiappa
OBS : nem preciso dizer, há dois pontos aí :
a. este código acima (derivado do que vc escreveu) tá simplesmente COPIANDO O MESMO EXATO VALOR contido na coluna BALANCE para a coluna WALLET : ele funciona mas logicamente falando não faz muito sentido… Faria sentido se vc quisesse colocar na coluna WALLET o resultado de algum CÁLCULO que envolvesse a BALANCE….
e
b. dependendo da sua Exata versão/edition do RDBMS Oracle, há DIVERSAS maneiras de vc ter uma coluna calculada automaticamente pelo banco em cima de valores vindos de outras colunas – entre outras vc pode ter VIRTUAL COLUMNs OU pode ter Views Materializadas OU pode ter views simples que mostrem o resultado do cálculo que vc programou, etc….. Num sistema Produção eu Avaliaria essas outras coisas antes de apelar pra trigger….