Gatilhos no Mysql

Pessoal, estou com uma dúvida, sobre gatilhos. O MySql ou algumas versões do mesmo não suporta gatilhos no mesmo tempo na mesma tabela? Pois criei um gatilho no after insert, funciona perfeito, quando vou criar outro gatilho no after insert na mesma tabela da o erro:

Mensagens do MySQL : #1235 - This version of MySQL doesn’t yet support ‘multiple triggers with the same action time and event for one table’

Depois eu apenas troquei de after para “before” insert e deu certo, ele incluiu, porém meu gatilho precisa da id auto-inclement da tabela .
Exemplo:

CREATE TRIGGER depoisINSERT_historico2
AFTER INSERT ON historico_notas
FOR EACH ROW
BEGIN

INSERT INTO historico_resul_final (IDHISTORICO , TOTAIS) SELECT new.IDHISTORICO, totais FROM dcfr;

END

Como é um evento no before (antes) insert, ele não vai pegar o “new.IDHISTORICO”.

Alguém pode me dar uma ajuda nisso?

Tem uma função. Não sei se vai ajudar:
LAST_INSERT_ID()
que pega o valor do ultimo incremento
http://dev.mysql.com/doc/refman/5.5/en/example-auto-increment.html
mas cuidado com isto:

Note

For a multiple-row insert, LAST_INSERT_ID() and mysql_insert_id() actually return the AUTO_INCREMENT key from the first of the inserted rows. This enables multiple-row inserts to be reproduced correctly on other servers in a replication setup.

Você não pode em uma trigger de insert fazer inserts na mesma tabela da trigger, pois entraria num loop sem fim, recursivo.

O! SELECT LAST_INSERT_ID(); só vai funcionar bem com as transaçóes em lock, insert e select dentro do lock.

Estou fazendo insert em tabelas diferentes! Porém o gatilho esta na mesma tabela.

Alexandre, eu ate consigo pegar o id auto-inclement, porém quando o tempo é um “After”. O que preciso é ter 2 gatilhos dando insert em “tabelas diferentes”, porém esses gatilhos esta na mesma tabela. Já consegui fazer os 2 gatilhos funcionar, mas com tempos diferentes, ou seja, um na After e o outro no Before. Preciso os dois gatilhos no After… Por isso que da o erro mencionado!

Porque não faz os 2 inserts dentro do mesmo gatilho?

Lá você pode programar como programa numa stored procedure.

Vou fazer isso e posto o resultado!

Estou passando por uma situação semelhante, preciso fazer um update na mesma tabela, posterior a um update. Poderia postar um exemplo por favor de como resolveu sua situação?

via trigger não é possivel, use via aplicação, ou procedure

Estava evitando usar aplicação, infelizmente não encontrei outra forma…
Obrigado a todos!