Criando uma Trigger no seu Banco de Dados em MySQL

Поділитися
Вставка
  • Опубліковано 7 січ 2025

КОМЕНТАРІ • 7

  • @luqeta.
    @luqeta. 2 місяці тому

    Virgem sempre marcando presença 🫵

  • @sergiosemprebom214
    @sergiosemprebom214 Рік тому

    Ótima aula!

  • @iricky9373
    @iricky9373 2 роки тому

    meu estava dando erro no volues e aparecia essa msg ERROR 1054:
    no min 10:00

  • @sambasera213
    @sambasera213 9 місяців тому

    Boas pessoal! acabei de assistir o vídeo, eu gostaria que me ensine a criar um Trigger no SQL-Server;
    por ex: imagine que a minha loja abre de 8H as 16H. Então a minha duvida e seguinte:
    como criar um Trigger para impedir que antes e depois de encerar o serviço nenhum registro pode ser inserido, atualizado ou deletado... ponto de interrogação

    • @ricardoalexandrebontempo5291
      @ricardoalexandrebontempo5291  9 місяців тому

      Para criar uma trigger que execute em um determinado horário no SQL Server, precisamos entender que triggers são acionadas por eventos de DML (Data Manipulation Language) como INSERT, UPDATE ou DELETE em uma tabela, e não por eventos de tempo específicos.
      No entanto, você pode usar o SQL Server Agent para agendar uma tarefa que execute um procedimento armazenado ou um script SQL em um horário específico, como das 8h às 16h. Aqui está um exemplo de como fazer isso:
      Crie um Procedimento Armazenado:
      Primeiro, você precisa criar um procedimento armazenado que contenha as operações que deseja executar:
      sql
      Copy code
      CREATE PROCEDURE MeuProcedimento
      AS
      BEGIN
      -- Coloque aqui as operações que deseja executar
      -- Exemplo: EXEC MinhaTrigger;
      PRINT 'Executando procedimento armazenado às ' + CONVERT(varchar, GETDATE());
      END;
      Crie um Job no SQL Server Agent:
      Em seguida, você pode criar um job no SQL Server Agent para agendar a execução do procedimento armazenado. Aqui está um exemplo:
      sql
      Copy code
      USE msdb;
      GO
      EXEC dbo.sp_add_job
      @job_name = N'MeuJob',
      @enabled = 1,
      @start_step_id = 1,
      @notify_level_eventlog = 0,
      @delete_level = 0,
      @category_name = N'[Uncategorized (Local)]',
      @job_id = @job_id OUTPUT;
      EXEC dbo.sp_add_jobserver
      @job_name = N'MeuJob';
      EXEC dbo.sp_add_jobstep
      @job_name = N'MeuJob',
      @step_id = 1,
      @step_name = N'Executar Procedimento Armazenado',
      @subsystem = N'TSQL',
      @command = N'EXEC MeuProcedimento;',
      @database_name = N'master',
      @flags = 0;
      EXEC dbo.sp_add_jobschedule
      @job_name = N'MeuJob',
      @name = N'ScheduleDiurno',
      @freq_type = 4,
      @freq_interval = 1,
      @active_start_time = 080000,
      @active_end_time = 160000;
      Neste exemplo, @active_start_time define o horário de início (8h) e @active_end_time define o horário de término (16h) para a execução do job.
      Depois de criar o job no SQL Server Agent, o procedimento armazenado será executado conforme agendado, no intervalo de tempo especificado. Certifique-se de que o SQL Server Agent esteja configurado e em execução para que os jobs agendados sejam executados corretamente.

  • @wallacepereira1569
    @wallacepereira1569 Рік тому

    Não dá pra enxergar os gatilhos. 🥲