Pergunta

Eu tenho problema com a criação de um gatilho MySQL simples em C #. Estou usando StringBuilder para construir a seguinte cadeia de comando:

DELIMITER $$

DROP TRIGGER / *! 50032 SE EXISTE * / dbname.table $$

CREATE TRIGGER dbname.inserttrigger AFTER INSERT ON dbname.table

FOR EACH ROW BEGIN

...

END;

$$

DELIMITER;

quando tento cmd.ExecuteNonQuery () ocorre uma exceção (erro na sintaxe SQL), que é, apesar das novas linhas que se referem a linha 1. - O StringBuilder irá colocar em "\ r \ n" para cada AppendLine () <. / p>

Se eu copiar e colar o comando para o console MySQL funciona muito bem.

Foi útil?

Solução

Este parece ter sido um bug no MySQL com a declaração DELIMITER , não tenho certeza que é o mesmo que você está acertando. Foi fixado em uma versão recente do MySQL. Se você não estiver usando a versão mais recente, tente atualizar MySQL e tente novamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top