SELECT o.sp_id, o.name, m.definition, o.object_id
FROM
(
SELECT ROW_NUMBER() OVER (ORDER BY name) AS sp_id, name, object_id
FROM sys.objects
WHERE type = 'P'
) AS o
JOIN sys.all_sql_modules AS m ON o.object_id = m.object_id
ORDER BY 1
이 쿼리를 이용하여 DB내의 프로시저 스크립트를 구할 수 있다고 하는데요.
프로시저 중에 줄 수가 상당히 긴 것들은 중간에 데이터가 짤립니다. ㅠㅠ
DDLTrigger도 마찬가지로 그런 현상이 계속 생겨서~ 프로시저 작업 이력이 제대로 안남는 문제가 생기더라구요. ㅠ
이런경우는 어떻게 하면 좋을까요? ㅠㅠ ㅠ
저는 DDL 트리거 만들어서 프로시져들 형상관리를 잘 해오고 있는데요.
프로시져가 스크립트가 짤리는 문제는 없었습니다.
처음 만들때도 일부러 무지막지하게 긴 프로시져 만들어서 테스트 해봤습니다.
만약 sys.all_sql_modules의 내용을 볼때 "결과를 텍스트로 보기"상태에서 보고 계시면 짤릴 수 있습니다.
텍스트로 보기 모드에서는 최대 문자 표시가 8192로 제한됩니다.
제가 만든 DDL 트리거를 참고해보세요.