Przechowywane procedury nie są przechowywane jako pliki, są przechowywane jako metadane i udostępniane nam pracownikom (dziękujemy Michaelowi za przypomnienie o sysschobjs
) w widokach katalogu sys.objects
, sys.procedures
, sys.sql_modules
, itd. W przypadku pojedynczej procedury składowanej można bezpośrednio zapytać o definicję, korzystając z tych widoków (co najważniejsze:sys.sql_modules.definition
) lub przy użyciu OBJECT_DEFINITION()
działać jak wskazał Mikołaj
(chociaż jego opis syscomments
nie jest całkowicie dokładne).
Aby wyodrębnić wszystkie procedury składowane do jednego pliku, jedną z opcji byłoby otwarcie Eksploratora obiektów, rozwinięcie twój serwer> bazy danych> twoja baza danych> programowalność
i podświetl procedury składowane
węzeł. Następnie naciśnij F7 (Widok> Szczegóły Eksploratora obiektów
). Po prawej stronie wybierz wszystkie żądane procedury, a następnie kliknij prawym przyciskiem myszy skryptowa procedura składowana jako> utwórz w> plik
. Spowoduje to utworzenie jednego pliku ze wszystkimi wybranymi procedurami. Jeśli chcesz mieć jeden plik dla każdej procedury, możesz użyć tej metody, wybierając tylko jedną procedurę na raz, ale może to być nużące. Możesz również użyć tej metody do skryptowania wszystkich procedur związanych z księgowością do jednego pliku, wszystkich procedur związanych z finansami do innego pliku itp.
Łatwiejszym sposobem wygenerowania dokładnie jednego pliku na procedurę składowaną byłoby użycie Generuj Kreator skryptów
- ponownie, zaczynając od Object Explorera - kliknij prawym przyciskiem myszy swoją bazę danych i wybierz Zadania> Generuj skrypty
. Wybierz Wybierz określone obiekty bazy danych
i sprawdź najwyższe Procedury składowane
skrzynka. Kliknij Następny. Aby uzyskać dane wyjściowe, wybierz Zapisz skrypty w określonej lokalizacji
, Zapisz do pliku
i Pojedynczy plik na obiekt.
Te kroki mogą się nieznacznie różnić w zależności od Twojej wersji programu SSMS.