2013-06-24 3 views
3

Кто-нибудь знает способ создания контрольной суммы для каждой хранимой процедуры на сервере, чтобы иметь возможность сравнивать их с другими SP на разных серверах?Генерация контрольной суммы SQL SP

С уважением,

Jeroen

ответ

4

Вы могли;

SELECT 
    ROUTINE_NAME, 
    HASHBYTES('SHA1', ROUTINE_DEFINITION) 
FROM INFORMATION_SCHEMA.ROUTINES 
WHERE ROUTINE_TYPE = 'PROCEDURE' 
    AND OBJECTPROPERTY(OBJECT_ID(ROUTINE_NAME), 'IsMSShipped') = 0 
+0

Просто попробовал это и, похоже, сделал именно то, что искал. Большое спасибо! – coussej

+1

@ Jebus89 - Конечно, все идет немного грушевидно, если у вас есть длинные хранимые процедуры, так как 'ROUTINE_DEFINITION' содержит только первые 4000 символов. –