[SQL Server] Trouver l'autheur de la modification d'une PS

Contenu du snippet

SELECT name
, create_date
, modify_date
FROM sys.objects
WHERE type = 'P'-- Procédrures

--ou mais nécessite les permissions d'execution de 'SYS.TRACES'.


--Emplacement du fichier de Log sur le serveur SQL
DECLARE @filename VARCHAR(255)
SELECT @FileName = SUBSTRING(path, 0, LEN(path)-CHARINDEX('\', REVERSE(path))+1) + '\Log.trc'
FROM sys.traces
WHERE is_default = 1;


SELECT ftg.HostName
, ftg.ApplicationName
, ftg.NTUserName
, ftg.NTDomainName
, ftg.LoginName
, ftg.SPID
, ftg.EventClass
, te.Name AS EventName
, ftg.EventSubClass --0=Begin 1=Commit 2=Rollback
, ftg.TEXTData
, o.create_date
, ftg.StartTime
, ftg.EndTime
, ftg.ObjectName
, ftg.DatabaseName
, ftg.FileName
, ftg.IsSystem
FROM [fn_trace_gettable](@filename, DEFAULT) ftg
Inner JOIN sys.trace_events te ON ftg.EventClass = te.trace_event_id
left join sys.objects o on o.name = ftg.ObjectName
WHERE EventClass = 164 --Se produit lors de la modification d'un objet de base de données.
ORDER BY StartTime DESC;

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.