3
respostas

Trigger

Srs, bom dia!

Eu tenho uma trigger de update. Eu quero pegar o usuário quem fez a alteração, mas nesse caso ele está pegando o root ou seja o usuário da conexão com o banco.

Alguém já teve essa experiencia? Se puder compartilha eu agradeço. Abraço.

Obs: Minha aplicação é em php.

INSERT INTO  weblogs(tabela, acao, idRegistro, dataOcorrencia, usuario, antes, depois)     

    VALUES('pessoa_fisica', 'UPDATE', new.idPf, now(), CURRENT_USER(), 
      concat('Nome:',old.nome,'|','CPF:',old.cpf,'|','RG:',old.rg,'|','Logradouro:',old.logradouro,'|','Bairro:',old.bairro,'|','Cidade:',old.cidade,
             '|','Estado:',old.estado,'|','Numero:',old.numero,'|','Cep:',old.cep,'|','Complemento:',old.complemento,'|','Telefone:',old.telefone,
             '|','Celuar:',old.celular,'|','Email:',old.email,'|','Cooperado:',old.cooperado,'|','Liberado:',old.liberado,'|','Senha:',old.senha,
             '|','NivelAcesso:',old.idNivelAcesso,'|','FraseSegura:',old.idFraseSeguranca,'|','Resposta:',old.respostaFrase),                                                                               

     concat('Nome:',new.nome,'|','CPF:',new.cpf,'|','RG:',new.rg,'|','Logradouro:',new.logradouro,'|','Bairro:',new.bairro,'|','Cidade:',new.cidade,
             '|','Estado:',new.estado,'|','Numero:',new.numero,'|','Cep:',new.cep,'|','Complemento:',new.complemento,'|','Telefone:',new.telefone,
             '|','Celuar:',new.celular,'|','Email:',new.email,'|','Cooperado:',new.cooperado,'|','Liberado:',new.liberado,'|','Senha:',new.senha,
             '|','NivelAcesso:',new.idNivelAcesso,'|','FraseSegura:',new.idFraseSeguranca,'|','Resposta:',new.respostaFrase))
3 respostas

Bom dia Leandro! Você pode pegar o usuário logado na superGlobal $_SESSION; mas aí como passar pra trigger eu já não sei...

Oi Jonas,

pelo que pesquisei não tem como fazer pela trigger. Eu vou gavar na tabela de PF o usuário logado e coloco esse campo na trigger. Unica ideia que eu tive. Abraço.

Bom dia Leandro! Foi o que imaginei também. Abraço!