Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Локальные переменные




Локальные переменные используются для временного хранения значений,

объявляются оператором DECLARE с указанием типа и обозначаются символом @ в начале

имени. Сам SQL Server определяет и глобальные переменные, доступные пользователям.

Вы можете применять оператор SELECT для присваивания локальным переменным

значений, получаемых как результат запроса. Когда вы присваиваете значение локальной

переменной внутри оператора SELECT, то лучше, когда этот оператор возвращает в запросе

только одну строку. При выдаче нескольких строк локальная переменная получит значение

из последней строки, выданной запросом.

 

Пример 14.2. Использование локальных переменных для поиска ―отличников‖ с

фамилиями, начинающихся с буквы А до М (в переменную @BALL задаем оценку «восемь»,

а переменная @N определяет маску для поиска нужных фамилий).

Обратите внимание, что в отличие от MS Access, в SQL Server в маске оператора

LIKE для выбора любых символов используется знак %, а не *, а для одного символа – знак

подчеркивания _, а не?. Кроме того, в предложении WHERE допустимы операции

сравнения: = (равно),!= (не равно) или <> (не равно), > (больше), >= (больше или равно),!<

(не меньше). < (меньше), <= (меньше или равно),!> (не больше).

DECLARE @N NVARCHAR(20), @BALL INT

SET @N= '[А-М]%'

SELECT @BALL=8

SELECT Фамилия, Предмет FROM Успеваемость

WHERE ((Фамилия LIKE @N) AND Оценка>@BALL)

 

124

 


 

Табличные переменные – альтернатива временным таблицам – применяют в

функциях, триггерах и хранимых процедурах. В отличие от временных таблиц, для которых

сама таблица и все данные хранятся в базе данных tempdb на диске, табличные переменные и

связанные с ними данные хранятся в памяти.

 

Пример 14.3. Использование локальной табличной переменной @locT для выборки

уникальных имен.

declare @locT Table(Имя char(20))

insert into @locT

select distinct Имя from Студенты

-- вызов

select * from @locT

 

В идеологии «клиент-серверных» приложений важными являются объекты, которые

представляют специфические аналоги запросов (представления, встроенные функции,

сохраненные (хранимые) процедуры), которые хранятся на стороне сервера.

 

Представление (view) – это виртуальная таблица, в основе которой лежит обычная

SQL-инструкция на выборку (инструкция SELECT), в которой могут использоваться все

присущие этому типу запросов возможности: критерии отбора, группировка, сортировка и

т.д. или операторы INSERT, UPDATE и DELETE. Это наиболее распространенные типы

представления, которые можно применять для упрощения или безопасности данных. Кроме

того, представление можно использовать для упрощения сложных операций связывания

(join) или получения агрегированных данных.

Для создания представления используют Конструктор (см. пример 14.4), в котором

формируют запрос, запускают его на выполнение кнопкой с восклицательным знаком

(Execute – Выполнить) и сохраняют, задав ему имя или используют кнопку

Query – Новый запрос) для создания запросов в режиме SQL (см. пример 14.5).

 

Пример 14.4. Создать представление, которое будет выводить оценки (девятки и

десятки) по предметам для студентов, чья фамилия начинается с буквы М.

Выполнение:

В контекстном меню пункта Views выбрать New Views, откроется окно выбора

добавляемых таблиц для построения представления. На рисунке 14.17 показано это окно.

 

Рис. 14.17. Окно добавления таблиц для разработки представления

 

Выбираем нужную таблицу (в нашем примере это таблица Успеваемость), нажимаем

кнопку Add, закрываем окно кнопкой Close. Откроется окно построителя запроса (рис.14.18)

с четырьмя областями для отображения схемы данных, бланка запроса (область сетки),

запроса в режиме SQL и просмотра результата выполнения запроса.

 

125

 
 
 
(New


 

 

Кнопки


 

 

Конструктора


запросов

 

 

Область схемы, куда

добавляются таблицы

 

Область сетки или бланк

запроса

 

Область SQL- запроса

 

Область результата

выполнения запроса

 

Рис. 14.18. Построитель запросов для представления в базе данных в SQL Server 2005

 

Далее можно поставить птички в полях таблицы, которые требуется отобразить в

запросе или перетащить эти поля в область бланка запроса. В отличие от MS Access,

построитель запроса формирует поля не в столбцах, а в строках, При этом для каждого поля

во втором столбце можно задать псевдоним (alias, алиасное имя), далее создать критерий

отбора (Filter), задать сортировку (Sort) и признак вывода (Output) в результирующую

таблицу.

В области SQL-запроса формируется инструкция, которую можно редактировать или

создавать вручную без области сетки. При построении запросов можно применять групповые


операции, для этого необходимо нажать кнопку


(Add group by – Группировать) на


панели инструментов. Запрос выполняется нажатием кнопки


(Execute – Выполнить).


Запрос сохраняют нажатием кнопки


(Save – Сохранить), представлению дают


имя (рис.14.19).

 

 

Рис. 14.19. Ввод имени для представления в базе данных в SQL Server 2005

 

Дальнейшие технологии работы с представлениями и таблицами одинаковы.

 

Пример 14.4. Создать представление, которое будет подсчитывать количество

студентов в каждой группе.

 

126

 
 
 
 
 


 

Для создания представлений и запросов в SQL Server 2005 можно открыть окно


построителя в режиме SQL, нажав кнопку


(рис.14.20).


Инструкцию


набирают в окне, нажатием кнопки Parse


проверяют на корректность, исправляют


ошибки и запускают на выполнение нажатием кнопки


(Выполнить). В нижней части


в окне сообщений Messages появится сообщение: Command(s) completed successfully.

Теперь выполняем обновление базы данных. Курсор ставим на объект Views,

нажимаем правую кнопку и выбираем команду Refresh (Обновить). В списке представлений

появится только что созданное представление.

 

 

Видим созданное представление

после выполнения и обновления

объектов базы данных

 

 

Рис. 14.20. Разработка представления в базе данных в SQL Server 2005

 




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 539; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.