Anúncio

Trigger na tabela C...
 
Notifications
Clear all

[Resolvido] Trigger na tabela CheatLog

3 Posts
3 Usuários
2 Reactions
130 Visualizações
Will
 Will
(@will)
Posts: 13
Mentor Respeitado
Topic starter
 

Faaala devs, blz? 🍵 

Recentemente um colega ADM de servidor pediu para eu criar uma forma automática de banimento por MACID e block da conta toda vez que um ID for inserido na tabela CheatLog. Vou compartilhar com vocês aqui pois pode ser útil para alguém de alguma forma. O melhor jeito que pensei para resolver isso, era meter uma trigger na tabela cheatlog, assim fica easy peasy para resolver o problema.

No caso dele resolveu, porém essa trigger pode precisar de algumas melhorias, de acordo com a necessidade... Anyway, vou deixar ela aqui para vocês 😘 

USE [LogDB]
GO

CREATE TRIGGER trg_AfterInsert_CheatLog
ON [dbo].[CheatLog]
AFTER INSERT
AS
BEGIN
    SET NOCOUNT ON;

    -- Inserindo os dados na tabela BannedMac
    INSERT INTO [UserDB].[dbo].[BannedMac] (Name, MacAddress, szHDUUID, Banned)
    SELECT 
        AL.szID AS Name,
        AL.szMac AS MacAddress,
        AL.szHDUUID AS szHDUUID,
        1 AS Banned
    FROM inserted I
    INNER JOIN [LogDB].[dbo].[AccountLogin] AL ON I.ID = AL.szID
    WHERE AL.szMac IS NOT NULL;

    -- Atualizando a tabela Users para bloquear o usuário
    UPDATE U
    SET U.Blocked = 1
    FROM [UserDB].[dbo].[Users] U
    INNER JOIN inserted I ON U.Username = I.ID;
END
GO

 

Como vocês podem ver, ela pega as info que inseriu na CheatLog, e usa elas para fazer o banimento do MAC e da conta também.

 

Espero que possa ser útil para alguém aí 😘 

William Varvenczak

 
Postado : 04/05/2025 10:57 am
Arthas and Raka reacted
Raka
 Raka
(@rakabr)
Posts: 26
Admin
 

Obrigado por contribuir com a comunidade 🍾 

Apenas criando um legado 😊

 
Postado : 04/05/2025 3:59 pm
(@arthas)
Posts: 11
Admin
 

Top demais Will! valeu muito por compartilhar!

 
Postado : 06/05/2025 12:37 am
Compartilhar:

Anúncio