• dave hants (5/8/2014)


    bartedgerton (10/8/2013)


    Basu's suggestion was right.

    Here is my full query to list all DDL changes:

    ALTER PROCEDURE [dbo].[SchemaChangesToday]

    @dbName VARCHAR(128) = NULL

    AS

    BEGIN

    DECLARE @filename nvarchar(1000);

    -- Get the name of the current default trace

    SELECT @filename = cast(value as nvarchar(1000))

    FROM ::fn_trace_getinfo(default)

    WHERE traceid = 1 and property = 2;

    -- view current trace file

    SELECT LoginName, HostName, ApplicationName, DatabaseName, ObjectName, sv.name [ObjectType], te.Name [Action], StartTime, ftg.TextData

    FROM ::fn_trace_gettable(@filename, default) AS ftg

    LEFT JOIN sys.trace_events AS te ON ftg.EventClass = te.trace_event_id

    LEFT JOIN spt_values sv ON ftg.ObjectType = sv.number

    WHERE (ftg.EventClass in (46,47,118,125,126,128,129,131,164,165,176,177,178))

    and DatabaseName = case when @dbName is null then databasename else @dbName end

    and DatabaseName != 'tempdb'

    and EventSubClass = 0

    ORDER BY ftg.StartTime desc;

    END;

    I think there may be duplicates in this result because of duplicate support values....

    Regards, Dave

    Ok, I know it has been almost a year since the last past to this thread and the thread is really old. But since I happened across the thread and the duplication of data issue, I figured I would chime in.

    The duplicate data can be fixed by adding the following to the join on spt_values

    AND sv.type = 'EOD'

    All of the values are duplicated in the table. There is one for each the EOD and the EOB types.

    Jason...AKA CirqueDeSQLeil
    _______________________________________________
    I have given a name to my pain...MCM SQL Server, MVP
    SQL RNNR
    Posting Performance Based Questions - Gail Shaw[/url]
    Learn Extended Events