none
Inclusão via insert

    Pergunta

  • Fiz essa consulta
    mais o if exist está retornado true

    como posso fazer para fazer uma inclusão pelo insert

        IF NOT EXISTS(
                        SELECT
                            idTreinamento
                        FROM
                            MP_RH_CARGO_TREINAMENTO
                        WHERE
                        Cargo_codigo  IN  (SELECT value FROM fn_Split (@p_Cargo_codigo    , ',')) AND
                        idTreinamento =      (SELECT value FROM fn_Split (@p_idTreinamento    , ','))
                        
                     )
        BEGIN
            INSERT INTO
                    MP_RH_CARGO_TREINAMENTO (
                                                idCargo                ,
                                                Cargo_codigo        ,
                                                idTreinamento        ,
                                                Codigo_Treinamento    ,
                                                data_criacao        ,
                                                login_usuario
                                                )
                SELECT
                        @p_idCargo                ,
                        @p_Cargo_codigo            ,
                        T1.value                ,
                        T2.Codigo_Treinamento    ,
                        CURRENT_TIMESTAMP        ,
                        @p_Login    
                        FROM
                                fn_Split (@p_idTreinamento, ',') as T1
                    inner join  MP_RH_TIPO_TREINAMENTO as T2 on T2.Id = T1.value;                                                           
            SELECT  SCOPE_IDENTITY() AS ID            
            END            
    END

    quinta-feira, 11 de janeiro de 2018 11:24

Todas as Respostas

  • Marco,

    Ao invés de utilizar o Not Exist utilize o operador Not In.


    Pedro Antonio Galvao 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]

    quinta-feira, 11 de janeiro de 2018 22:06
  • Fiz o teste com Not IN
    não funcionou
    sexta-feira, 12 de janeiro de 2018 17:40
  • Fiz essa consulta
    mais o if exist está retornado true

    O que deve ser verificado se existe? Poderia explicar em linguagem corrente, sem utilizar comandos SQL?


    e-mail       José Diz     Belo Horizonte, MG - Brasil


    sexta-feira, 12 de janeiro de 2018 18:40
  • Tenho uma lista de treinamento
    Fiz a exclusão em um treinamento e inclusão de um novo treinamento ao mesmo tempo

    sexta-feira, 12 de janeiro de 2018 19:12
  • Marco,

    Como o Id dos treinamentos é gerado?

    Você que define o número manualmente ou esta sendo atribuído pelo próprio SQL Server?


    Pedro Antonio Galvao 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, 12 de janeiro de 2018 23:24