Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
SQL Server Management Studio поставляется с шаблонами для многих распространенных задач, но реальная сила шаблонов заключается в возможности создать пользовательский шаблон для сложного скрипта, который необходимо создавать часто. В этой практике вы создадите простой скрипт с несколькими параметрами, но шаблоны полезны для длительных повторяющихся сценариев.
Использование пользовательских шаблонов
Создание пользовательского шаблона
В Обозревателе шаблонов разверните Шаблоны SQL Server, щелкните правой кнопкой мыши Хранимая процедура, наведите указатель на Создать, а затем выберите Папка.
Введите custom в качестве имени новой папки шаблона и нажмите клавишу ВВОД.
Щелкните правой кнопкой мыши «Настраиваемый», наведите курсор на «Создать» и выберите Шаблон.
Введите WorkOrdersProc в качестве имени нового шаблона и затем нажмите Enter.
Щелкните правой кнопкой мыши WorkOrdersProc и нажмите кнопку "Изменить".
В диалоговом окне "Подключение к ядру СУБД" проверьте сведения о подключении и нажмите кнопку "Подключить".
В Редакторе запросов введите следующий скрипт, чтобы создать хранимую процедуру, которая ищет заказы для определенной детали, в этом случае Лезвие. (Вы можете скопировать и вставить код из окна учебника.)
USE AdventureWorks20012; GO IF EXISTS ( SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE SPECIFIC_NAME = 'WorkOrdersForBlade') DROP PROCEDURE dbo.WorkOrdersForBlade; GO CREATE PROCEDURE dbo.WorkOrdersForBlade AS SELECT Name, WorkOrderID FROM Production.WorkOrder AS WO JOIN Production.Product AS Prod ON WO.ProductID = Prod.ProductID WHERE Name = 'Blade'; GOНажмите клавишу F5, чтобы выполнить этот скрипт, создав процедуру WorkOrdersForBlade .
В обозревателе объектов щелкните правой кнопкой мыши сервер и выберите команду "Создать запрос". Откроется новое окно редактора запросов.
В редакторе запросов введите execute dbo. WorkOrdersForBlade и нажмите клавишу F5, чтобы выполнить запрос. Убедитесь, что панель Результаты возвращает список рабочих заказов для лезвий.
Измените сценарий шаблона (скрипт на шаге 7), заменив название продукта Blade параметром product_name<product_name,
nvarchar(50), name> в четырех местах.Замечание
Параметры требуют трех элементов: имя параметра, который требуется заменить, тип данных параметра и значение по умолчанию для параметра.
Теперь скрипт должен выглядеть следующим образом:
USE AdventureWorks20012; GO IF EXISTS ( SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE SPECIFIC_NAME = 'WorkOrdersFor<product_name, nvarchar(50), name>') DROP PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>; GO CREATE PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name> AS SELECT Name, WorkOrderID FROM Production.WorkOrder AS WO JOIN Production.Product AS Prod ON WO.ProductID = Prod.ProductID WHERE Name = '<product_name, nvarchar(50), name>'; GOВ меню "Файл" нажмите кнопку "Сохранить WorkOrdersProc.sql" , чтобы сохранить шаблон.
Тестирование пользовательского шаблона
В обозревателе шаблонов разверните хранимую процедуру, разверните узел Custom и дважды щелкните WorkOrderProc.
В диалоговом окне "Подключение к ядру СУБД" заполните сведения о подключении и нажмите кнопку "Подключить". Откроется новое окно редактора запросов, содержащее содержимое шаблона WorkOrderProc .
В меню Запрос выберите пункт Указать значения для параметров шаблона.
В диалоговом окне "Заменить параметры шаблона" для значения
product_nameвведите FreeWheel (заменив содержимое по умолчанию), а затем нажмите кнопку "ОК", чтобы закрыть диалоговое окно "Заменить параметры шаблона" и изменить скрипт в редакторе запросов.Нажмите клавишу F5, чтобы выполнить запрос, создав процедуру.