How to check date of last change in stored procedure or function in SQL server

后端 未结 8 1829
悲&欢浪女
悲&欢浪女 2020-12-12 09:36

I need to check when function was changed last time. I know how to check creation date (it is in function properties window in SQL Server Management Studio).
I found tha

相关标签:
8条回答
  • 2020-12-12 09:44

    You can use this for check modify date of functions and stored procedures together ordered by date :

    SELECT 'Stored procedure' as [Type] ,name, create_date, modify_date 
    FROM sys.objects
    WHERE type = 'P' 
    
    UNION all
    
    Select 'Function' as [Type],name, create_date, modify_date
    FROM sys.objects
    WHERE type = 'FN'
    ORDER BY modify_date DESC
    

    or :

    SELECT type ,name, create_date, modify_date 
    FROM sys.objects
    WHERE type in('P','FN') 
    ORDER BY modify_date DESC
    -- this one shows type like : FN for function and P for stored procedure
    

    Result will be like this :

    Type                 |  name      | create_date              |  modify_date
    'Stored procedure'   | 'firstSp'  | 2018-08-04 07:36:40.890  |  2019-09-05 05:18:53.157
    'Stored procedure'   | 'secondSp' | 2017-10-15 19:39:27.950  |  2019-09-05 05:15:14.963
    'Function'           | 'firstFn'  | 2019-09-05 05:08:53.707  |  2019-09-05 05:08:53.707
    
    0 讨论(0)
  • 2020-12-12 09:50

    This is the correct solution for finding a function:

    SELECT name, create_date, modify_date
    FROM sys.objects
    WHERE type = 'fn'
    AND name = 'fn_NAME'
    
    0 讨论(0)
  • 2020-12-12 09:51

    I found this listed as the new technique

    This is very detailed

    SELECT * FROM INFORMATION_SCHEMA.ROUTINES
    WHERE ROUTINE_TYPE = N'PROCEDURE' and ROUTINE_SCHEMA = N'dbo' 
    order by  LAST_ALTERED desc
    
    SELECT * FROM INFORMATION_SCHEMA.ROUTINES
    WHERE ROUTINE_TYPE = N'PROCEDURE' and ROUTINE_SCHEMA = N'dbo' 
    order by  CREATED desc 
    
    
    SELECT * FROM INFORMATION_SCHEMA.ROUTINES
    WHERE ROUTINE_TYPE = N'FUNCTION' and ROUTINE_SCHEMA = N'dbo' 
    order by  LAST_ALTERED desc
    
    SELECT * FROM INFORMATION_SCHEMA.ROUTINES
    WHERE ROUTINE_TYPE = N'FUNCTION' and ROUTINE_SCHEMA = N'dbo' 
    order by  CREATED desc 
    
    0 讨论(0)
  • 2020-12-12 09:53

    In latest version(2012 or more) we can get modified stored procedure detail by using this query

    SELECT create_date, modify_date, name FROM sys.procedures 
    ORDER BY modify_date DESC
    
    0 讨论(0)
  • 2020-12-12 09:58
    SELECT *
    FROM sys.objects
    WHERE type IN ('FN', 'IF', 'TF') 
    AND name = 'dgdsgds'
    
    0 讨论(0)
  • 2020-12-12 10:00
    SELECT name, create_date, modify_date 
    FROM sys.objects
    WHERE type = 'P'
    ORDER BY modify_date DESC
    

    The type for a function is FN rather than P for procedure. Or you can filter on the name column.

    0 讨论(0)
提交回复
热议问题