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

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

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; просмотров: 2418. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

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

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

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

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Тема: Составление цепи питания Цель: расширить знания о биотических факторах среды. Оборудование:гербарные растения...

В эволюции растений и животных. Цель: выявить ароморфозы и идиоадаптации у растений Цель: выявить ароморфозы и идиоадаптации у растений. Оборудование: гербарные растения, чучела хордовых (рыб, земноводных, птиц, пресмыкающихся, млекопитающих), коллекции насекомых, влажные препараты паразитических червей, мох, хвощ, папоротник...

Типовые примеры и методы их решения. Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно. Какова должна быть годовая номинальная процентная ставка...

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