web-dev-qa-db-ja.com

SQL Serverのストアプロセッサまたははは関数の最終変更日を確認する方法

前回機能が変更されたときに確認する必要があります。作成日の確認方法を知っています(SQL Server Management Studioの関数プロパティウィンドウにあります)。
SQL Server 2000では、変更日を確認することができないことがわかりました(この投稿を参照してください。 SQL Server 2000でストアドプロシージャが最後に変更された日時を判断することはできますか?)。

SQL Server 2008で確認することはできますか? MSはそれをチェックすることを可能にするシステムテーブルにいくつかの新機能を追加しますか?

154
Marek Kwiendacz
SELECT name, create_date, modify_date 
FROM sys.objects
WHERE type = 'P'
ORDER BY modify_date DESC

関数のtypeは、procedureのFNではなくPです。または、名前の列でフィルタすることもできます。

326
Chris Diver

ストアドプロシージャのためにこれを試してください:

SELECT name, create_date, modify_date
FROM sys.objects
WHERE type = 'P'
AND name = 'myProc'
36
openshac

これは、関数を見つけるための正しい解決策です。

SELECT name, create_date, modify_date
FROM sys.objects
WHERE type = 'fn'
AND name = 'fn_NAME'
11
zuhaib hyder

私はこれが新しいテクニックとしてリストされているのを見つけました

これは非常に詳細です

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 
6
Arun Prasad E S

SQL 2000の場合は、次のように使用します。

SELECT name, crdate, refdate 
FROM sysobjects
WHERE type = 'P' 
ORDER BY refdate desc
3
Simon

最新バージョン(2012以上)では、このクエリを使用してストアドプロシージャの詳細を変更することができます。

SELECT create_date, modify_date, name FROM sys.procedures 
ORDER BY modify_date DESC
1
LTA
SELECT *
FROM sys.objects
WHERE type IN ('FN', 'IF', 'TF') 
AND name = 'dgdsgds'
0
Kris K