none
DÚVIDA SOBRE TRIGGER DE MSSQL para MySQL RRS feed

  • Pergunta

  • ASSIM FUNCIONA

    INSERT INTO OPENQUERY (MYSQL_LINK, 'SELECT cd_log_acesso,nu_credencial FROM pontodmpacessoii')
    SELECT CD_LOG_ACESSO,NU_CREDENCIAL FROM dbo.LOG_ACESSO_CADMAR WHERE NU_CREDENCIAL=49061

    DENTRO DA TRIGGER NÃO FUNCIONA

    USE [DMPACESSOII]
    GO
    /****** Object:  Trigger [dbo].[TGR_PONTODMPACESSOII_CADMAR]    Script Date: 01/30/2018 11:05:29 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    CREATE TRIGGER [dbo].[TGR_PONTODMPACESSOII_CADMAR]
    ON [dbo].[LOG_ACESSO_CADMAR]
    FOR INSERT
    AS
    BEGIN

    INSERT INTO OPENQUERY (MYSQL_LINK, 'SELECT cd_log_acesso,nu_credencial FROM pontodmpacessoii')
    SELECT CD_LOG_ACESSO,NU_CREDENCIAL FROM dbo.LOG_ACESSO_CADMAR WHERE NU_CREDENCIAL=49061

    END

    quinta-feira, 1 de fevereiro de 2018 09:38

Respostas

  • Deleted
    quinta-feira, 1 de fevereiro de 2018 16:54
  • RegiCosta2124,

    Talvez você terá que trabalhar com transações distribuídas dentro do seu bloco do comando Trigger, talvez, isso vai depender em muito de como o SQL Server esta abrindo a sessão para o processamento do trigger e também de como o MySQL esta recebendo estes dados.

    Acredito que o exemplo do José Diz passou posso funcionar, mas um outro detalhe que talvez você poderia tentar utilizar seria trocar a opção FOR INSERT por After Insert.


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    sexta-feira, 2 de fevereiro de 2018 11:00

Todas as Respostas

  • Deleted
    quinta-feira, 1 de fevereiro de 2018 16:54
  • RegiCosta2124,

    Talvez você terá que trabalhar com transações distribuídas dentro do seu bloco do comando Trigger, talvez, isso vai depender em muito de como o SQL Server esta abrindo a sessão para o processamento do trigger e também de como o MySQL esta recebendo estes dados.

    Acredito que o exemplo do José Diz passou posso funcionar, mas um outro detalhe que talvez você poderia tentar utilizar seria trocar a opção FOR INSERT por After Insert.


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    sexta-feira, 2 de fevereiro de 2018 11:00