IF OBJECT_ID('FN_ERRORLOG_DIR') IS NOT NULL
DROP FUNCTION
FN_ERRORLOG_DIR
GO
CREATE FUNCTION DBO.FN_ERRORLOG_DIR()
RETURNS NVARCHAR(4000)
AS
/**************************************************
** ERROR LOG FOLDER가쌓이는곳은어딘가?
**************************************************/
BEGIN
DECLARE @RC INT,
@DIR NVARCHAR(4000)
EXEC @RC = MASTER.DBO.XP_INSTANCE_REGREAD N'HKEY_LOCAL_MACHINE'
,N'SOFTWARE\MICROSOFT\MSSQLSERVER\MSSQLSERVER\PARAMETERS'
,N'SQLARG1', @DIR
OUTPUT, 'NO_OUTPUT'
RETURN RIGHT(@DIR, LEN(@DIR)-2)
END
GO
IF OBJECT_ID('SP_LOG_FIND') IS NOT NULL
DROP PROC
SP_LOG_FIND
GO
CREATE PROC SP_LOG_FIND (
@LF
VARCHAR(100)=
''
)
AS
/**************************************************
** 찾아라
**************************************************/
BEGIN
SET NOCOUNT ON
DECLARE @CMD VARCHAR(1000)
DECLARE @ELOG_DIR VARCHAR(1000)
SELECT @ELOG_DIR =
DBO.FN_ERRORLOG_DIR()
IF @LF = '' BEGIN
PRINT 'EXAMPLE
'
PRINT 'EXEC SP_LOG_FIND
AAA'
RETURN
END
SET @CMD = 'FINDSTR /I /C:"'+@LF+'" "' + @ELOG_DIR
+ '*"'
EXEC XP_CMDSHELL
@CMD
END
GO
'연구개발 > DBA' 카테고리의 다른 글
Mass Attack Remove 스크립트 (0) | 2010.07.27 |
---|---|
데이터 백업 샘플(vbs) (0) | 2010.07.27 |
Oracle의 nextvalue같은 함수 (0) | 2010.07.27 |
샘플데이타 채우기 (0) | 2010.07.27 |
SQL 2005 Service Manager (0) | 2010.07.27 |