Съхранените процедури не се съхраняват като файлове, те се съхраняват като метаданни и са изложени на нас, хора (благодаря на Майкъл за напомнянето относно sysschobjs
) в изгледите на каталога sys.objects
, sys.procedures
, sys.sql_modules
, и т.н. За отделна съхранена процедура можете да направите заявка за дефиницията директно, като използвате тези изгледи (най-важното sys.sql_modules.definition
) или с помощта на OBJECT_DEFINITION()
функционира както Никола посочи
(въпреки че неговото описание на syscommentsкод>
не е съвсем точно).
За да извлечете всички съхранени процедури в един файл, една от опциите е да отворите Object Explorer, да разширите вашия сървър> бази данни> вашата база данни> програмируемост
и маркирайте запомнените процедури
възел. След това натиснете F7 (Преглед> Подробности за Object Explorer
). От дясната страна изберете всички процедури, които искате, след това щракнете с десния бутон върху скрипт, съхранена процедура като> създайте във> файл
. Това ще създаде един файл с всички процедури, които сте избрали. Ако искате един файл за всяка процедура, можете да използвате този метод, като избирате само една процедура в даден момент, но това може да бъде досадно. Можете също да използвате този метод, за да напишете всички счетоводни процедури в един файл, всички свързани с финансите процедури в друг файл и т.н.
По-лесен начин да генерирате точно един файл на съхранена процедура би бил да използвате Генериране Съветник за скриптове
- отново, като се започне от Object Explorer - щракнете с десния бутон на вашата база данни и изберете Задачи> Генериране на скриптове
. Изберете Изберете конкретни обекти от базата данни
и проверете Съхранените процедури
от най-високо ниво кутия. Щракнете върху Напред. За изход изберете Запазване на скриптове на определено място
, Запазване във файл
и Един файл на обект.
Тези стъпки може да са малко по-различни в зависимост от вашата версия на SSMS.