Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

SQL-сценарии





Как уже отмечалось, Query Analyzer удобно использовать для написания и отладки сложных наборов операторов на языке Transact-SQL — сценариев (script). Сценарии полезны, например, для создания и предварительного заполнения баз данных (альтернатива созданию и заполнению баз данных из VB-кода). Еще более привлекательно то, что сценарии хранятся в текстовом файле. Это делает возможным их использование на других серверах.

Инструкции в сценариях группируются в пакеты. Пакет может содержать несколько SQL-инструкций, сценарий — несколько пакетов, разделяемых командой GO. В качестве примера можно привести сценарий, состоящий из двух пакетов (в каждом — по одной инструкции):

Рис. 20.61

Cценарий, состоящий из двух пакетов (в каждом — по одной инструкции)

Результат выполнения этого сценария представлен на рис. 20.62. Здесь вкладка Grids включает два окна: первое содержит результат первого запроса, второе — результат второго.

Рис. 20.62

Вкладка Grids включает два окна — для двух SQL-инструкций

Следующий скрипт предназначен для создания таблиц и связей между ними.

CREATE TABLE Подразделения (

КодПодразделения nvarchar(4) NOT NULL,

НаимПодразделения nvarchar(50) NULL,

Адрес nvarchar(60) NULL,

Телефон nvarchar(10) NULL)

go

 

ALTER TABLE Подразделения

ADD PRIMARY KEY NONCLUSTERED (КодПодразделения)

go

 

CREATE TABLE Товары (

КодТовара nvarchar(12) NOT NULL,

НаимТовара nvarchar(50) NULL,

Цена1 money NULL,

Цена2 money NULL)

go

 

ALTER TABLE Товары

ADD PRIMARY KEY NONCLUSTERED (КодТовара)

go

 

CREATE TABLE Запасы (

КодПодразделения nvarchar(4) NOT NULL,

КодТовара nvarchar(12) NOT NULL,

Количество int NOT NULL

)

go

 

ALTER TABLE Запасы

ADD FOREIGN KEY (КодПодразделения)

REFERENCES Подразделения

go

 

ALTER TABLE Запасы

ADD FOREIGN KEY (КодТовара)

REFERENCES Товары

Для тестирования этого скрипта запишите его в текстовый файл с именем, например, createDABASEcomp.txt. Создайте в Enterprise Manager новую базу данных с именем, например, Фирма2. Выделите эту базу в Object Browser и запустите Query Analyzer. Теперь все готово для загрузки скрипта (рис. 20.63).

Рис. 20.63

Все готово для загрузки скрипта

Щелкните на кнопке Load SQL Script и в окне Open Query File выберите файл createDABASEcomp.txt с текстом скрипта (рис. 20.64).

Рис. 20.64

Выберите файл createDABASEcomp.txt с текстом скрипта

После загрузки скрипта окно Query будет иметь вид, представленный на рис. 20.65.

Рис. 20.65

Окно Query с загруженным текстом скрипта

После выполнения загруженного скрипта (при помощи кнопки Execute Query) на вкладке Messages появляется сообщение об успешности выполнения команд скрипта (рис. 20.66).

Рис. 20.66

На вкладке Messages появляется сообщение об успешности выполнения команд скрипта

Вы можете проверить, действительно ли в результате были созданы таблицы и связи между ними. Если открыть Diagram Pane для базы Фирма2 и поместить на нее все пользовательские таблицы, то можно увидеть схему, представленную на рис. 20.67.

Рис. 20.67

Диаграмма для только что созданной базы Фирма2

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

Скрипты можно использовать не только для создания таблиц базы данных. Типичной может быть ситуация, когда вам необходимо может быть импортировать уже заполненные данными таблицы из mdb-файла в базу SQL Server. Как вы могли убедиться, при импортировании не переносится такая важная информация, как индексы и связи между таблицами.

Можно предположить, что наступит время, когда ремонтная мастерская, для которой создавалась информационная система, рассматриваемая в этой книге, уже не сможет обслуживаться одним менеджером по приему и выдаче изделий. Возрастет также количество специалистов по ремонту, которые самостоятельно вносят данные о ремонтах со своих рабочих компьютеров. Т.е. придет пора установить базу данных на SQL Server.

Если такая информационная система у вас имеется только в одной мастерской, то перенести данные на SQL Server, создать ключи и установить связи можно в Diagram Pane в окне утилиты Enterprise Manager. Если же вы успели установить систему в нескольких мастерских, то во избежание неприятностей создавать ключи и связи лучше при помощи текстового файла со скриптом и утилиты Query Analyzer (или при помощи кода на Visual Basic).

Для создания скриптов можно использовать Object Browser со встроенными шаблонами, которые представляют собой образцы файлов SQL-сценариев с замещаемыми параметрами. Вы можете создавать свои собственные шаблоны и использовать шаблоны, предоставляемые SQL Server для большинства операторов CREATE.

Источником скриптов (для создания базы данных) может служить приложение ERWin, которое удобно для описания модели базы данных. На рис. 20.68 представлено окно с физической моделью базы данных и открытое меню, в котором уже почти выбрана команда Forward Engineer/Schema Generation.

 

Рис. 20.68

ERWin-окно с физической моделью базы данных и открытое меню, в котором уже почти выбрана команда Forward Engineer/Schema Generation

Если в окне SQL Server Schema Generation (рис. 20.69) щелкнуть на кнопке Preview, то в окне SQL Server Schema Generation Preview можно будет увидеть скрипт для генерации базы данных на сервере (рис. 20.70). Этот скрипт, в частности, можно сохранить в файле.

Рис. 20.69

Чтобы увидеть скрипт для генерации базы данных на сервере, щелкните кнопку Preview

 

 

Рис. 20.70

Этот скрипт, в частности, можно сохранить в файле

Все вышеприведенное будет соответствовать действительности, если предварительно системе сообщено, для какой СУБД предназначена база данных. Это можно сделать в окне Computer Database ERWin – Target Server (рис. 20.71), которое вызывается при помощи команды Database | Choose Database.

Рис. 20.71

В этом окне можно сообщить приложению ERWin, для какой СУБД предназначена база данных







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




Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Разработка товарной и ценовой стратегии фирмы на российском рынке хлебопродуктов В начале 1994 г. английская фирма МОНО совместно с бельгийской ПЮРАТОС приняла решение о начале совместного проекта на российском рынке. Эти фирмы ведут деятельность в сопредельных сферах производства хлебопродуктов. МОНО – крупнейший в Великобритании...

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

Условия, необходимые для появления жизни История жизни и история Земли неотделимы друг от друга, так как именно в процессах развития нашей планеты как космического тела закладывались определенные физические и химические условия, необходимые для появления и развития жизни...

Studopedia.info - Студопедия - 2014-2025 год . (0.011 сек.) русская версия | украинская версия