Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Trigger para armazenar data e hora.


Edbatch

Pergunta

Olá amigos!

Bem, criei uma trigger que deverá armazenar em uma tabela, a data e hora de alteração na tabela ´produto´,

o objetivo é utilizar essa informação para exibir em uma tela, os produtos atualizados recentemente.

o meu problema é que a trigger está armazenando o valor "truncado" na tabela produto_alteracao (sem a hora),

alguém saberia como forçar o mysql a não truncar esse valor?

mysql> insert into rseletro.produto(id) values (7);
Query OK, 1 row affected, 1 warning (0.08 sec)
1265 Data truncated for column 'data_alteracao' at row 1

mysql> select * from rseletro.produto_alteracao;
+------------+----------------+
| id_produto | data_alteracao |
+------------+----------------+
|          8 | 2011-07-23     |
|          7 | 2011-07-23     |
+------------+----------------+
2 rows in set (0.00 sec)
Aliás também aproveito para perguntar se no mysql não existe um comando equivalente a "before insert OR update" (como no oracle), pois não encontrei na internet exemplos de trigger que utilizassem as duas ações ao mesmo tempo, tive de criar duas triggers para cada ação... segue fonte da triggers:

delimiter $$

use `rseletro`$$

create
definer=`root`@`localhost`
trigger `rseletro`.`trig_atz_alt_prod`
before update on `rseletro`.`produto`
for each row
begin

insert into produto_alteracao values (new.id, sysdate());

end$$

create
definer=`root`@`localhost`
trigger `rseletro`.`trig_ins_alt_prod`
before insert on `rseletro`.`produto`
for each row
begin

insert into produto_alteracao values (new.id, sysdate());

end$$

Editado por Denis Courcy
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Problema resolvido.

Verifiquei que no Mysql campos DATE não armazenavam horas (como funciona no oracle), então acrescentei um campo hora_alteracao do tipo TIME na tabela em questão.

Grato.

Oi 'Edbatch',

Era só você usar o tipo Timestamp em vez de usar Date. Mas já que você encontrou outra solução...

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...