Пред.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
4.2.3. Параметризованные запросы к БДНа практике часто возникает потребность получить информацию из БД по некоторому заданному значению «входных» данных (параметру) запроса. Такие запросы называются параметризированными, а соответствующие процедуры создаются с параметрами.
Например, для получения записи в таблице «Туристы» по заданной фамилии создадим следующую процедуру: create proc
proc_p1 @Фамилия nvarchar(50)
После знака @ указывается название параметра и его тип. Таким образом, для параметра с именем Фамилия был выбран тип nvarchar c количеством символов 50, поскольку в самой таблице для поля «Фамилия» установлен этот тип. Попытка запустить процедуру командой exec proc_p1 приводит к появлению сообщения об отсутствующем параметре. Процедуру необходимо запускать следующим образом: exec proc_p1 'Андреева' В результате выводится запись, соответствующая фамилии «Андреева» (рис. 68).
Рис. 68. Запуск процедуры proc_p1 Очевидно, что если в качестве параметра указать строку, отсутствующую в таблице, результатом выполнения процедуры будет пустая строка. В таблице 14 приводятся примеры хранимых процедур с параметрами. Таблица 14. Хранимые процедуры с параметрами
Продолжение таблицы 14.
Окончание таблицы 14.
Процедуры с выходными параметрами позволяют возвращать значения, получаемые в результате обработки SQL-конструкции при подаче определенного параметра. Представим, что нам нужно получать фамилию туриста по его коду (полю «Код туриста»). Создадим следующую процедуру: create proc proc_po1
Оператор output указывает на то, что выходным параметром здесь будет @LastName. Запустим эту процедуру для получения фамилии туриста, значение поля «Код туриста» которого равно «4»: declare @LastName nvarchar(60)
Оператор declare нужен для объявления поля, в которое будет выводиться значение. Получаем фамилию туриста (рис. 69):
Рис. 69. Результат запуска процедуры proc_po1
Рис. 70. Выполнение процедуры proc_po1. Применение псевдонима Для задания названия столбца можно применить псевдоним: declare @LastName
nvarchar(60)
Теперь столбец имеет заголовок (рис. 70). В таблице 15 приводятся примеры хранимых процедур с входными и выходными параметрами. Таблица 15. Хранимые процедуры с входными и выходными параметрами
Продолжение таблицы 15
Окончание таблицы 15
Для удаления хранимой процедуры используется оператор drop: drop proc proc1 Здесь proc1 - название процедуры (см. табл. 13 под № 1).
|
1 |
Оглавление
|