Основные операторы языка SQL.

Операторы DDL. Таблица 1.

 

Оператор

Описание

CREATE TABLE

Добавление новой таблицы к базе данных

DROP TABLE

Удаление таблицы из базы данных

ALTER TABLE

Изменение структуры имеющейся таблицы

CREATE VIEW

Добавление нового представления к базе данных

DROP VIEW

Удаление представления

CREATE INDEX

Создание нового индекса

DROP INDEX

Удаление существующего индекса

Data Definition Language (DDL).

Эта составляющая языка содержит операторы, позволяющие создавать, модифицировать и уничтожать базы данных и объекты внутри них (таблицы, представления) (см. таблицу 1).

Data Manipulation Language (DML).

Эта составляющая языка содержит операторы, позволяющие добавлять, выбирать, удалять и модифицировать данные. Эти операторы не обязательно должны завершать транзакцию, внутри которой они вызваны. Описание операторов представлено в таблице 2. Операторы DML. Таблица 2.

Оператор

Описание

SELECT

Выбор данных

INSERT

Вставка данных

DELETE

Удаление данных

UPDATE

Обновление данных

Иногда оператор SELECT относят к отдельной категории Data Query Language (DQL).

Transaction Control Language (TCL).

Операторы данного класса (см. таблицу 3) применяются для управления изменениями, выполняемыми группой операторов DML.

Операторы TCL. Таблица 3 .

Оператор

Описание

COMMIT

Завершение транзакции и сохранение изменений в базе данных

ROLLBACK

Откат транзакции и отмена изменений в базе данных

SET TRANSACTION

Установка параметров доступа к данным в текущей транзакции

Data Control Language (DCL).

Оператор

Описание

GRANT

Присвоение привилегии

REVOKE

Отмена привилегии

Операторы Data Control Language (см. таблицу 4), иногда называемые операторами Access Control Операторы DCL. Таблица 4. Language, применяются для осуществления административных функций, присваивающих или отменяющих право (привилегию) использовать базу данных, таблицу базы данных, а также выполнять те или иные операторы SQL.

Все операторы SQL имеют вид, представленный на рис.2.

Р Основные операторы языка SQL. - student2.ru ис.2 Структура оператора SQL

Каждый оператор SQL начинается с ключевого слова, которое определяет, что делает этот оператор (SELECT, INSERT, DELETE). В операторе содержатся предложения, содержащие сведения о том, над какими данными производятся операции. Каждое предложение начинается с ключевого слова, такого как FROM, WHERE и др. Структура предложения зависит от его типа: ряд предложений содержит имена полей или таблиц, некоторые могут включать дополнительные ключевые слова, константы или выражения.

В заключение отметим, что, по словам Дейта, язык SQL является гибридом реляционной алгебры и реляционного исчисления. В нем имеются элементы алгебры (оператор объединения UNION) и исчисления (квантор существования EXISTS). Кроме того, язык SQL обладает реляционной полнотой.

Пример 1. Выбор записей.

Для таблицы ЕМР, имеющей поля: NAME (имя), SAL (зарплата), MGR (руководитель) и DEPT (отдел), требуется вывести имена сотрудников и размер их зарплаты, увеличенный на 100 единиц. Оператор выбора можно записать следующим образом:

SELECT name, sal+100
FROM emp.

Пример 2. Выбор с условием.
Вывести названия таких отделов таблицы ЕМР, в которых в данный момент отсутствуют руководители. Оператор SELECT для этого запроса можно записать так:
SELECT dept
FROM emp
WHERE mgr is NULL.

QBE

В современных СУБД широко используются табличные языки запросов. Наиболее распространенным среди них является язык QBE (Query-By-Example — запрос по примеру), предложенный М.М. Злуфом и базирующийся на исчислении доменов. Он является универсальным и не требует знания программирования. Язык QBE предназначен для работы с терминала и ориентирован на конечного пользователя. Язык QBE реализован во многих современных СУБД, например dBase IV, Paradox, ОФИС-ИНФО и др. Конкретные реализации этого языка несколько отличаются друг от друга, но все они построены по единому принципу. Суть подхода, воплощенного в языке QBE, заключается в следующем.

На экране дисплея высвечивается «скелет» (образ, форма, структура) одной или нескольких таблиц (файлов баз данных, отношений), данные из которых будут участвовать в запросе. «Скелет» выбранной пользователем таблицы выводится на экран дисплея в виде «шапки», в крайнем левом столбце которой записано название файла базы данных, а в остальных — имена полей файла. В этой форме пользователь определяет условия запроса. Например, если пользователю необходимо получить все записи с заданным значением определенного атрибута, то в соответствующем столбце «скелета» указывается это значение.

Н Основные операторы языка SQL. - student2.ru а рис. 5.1 представлен запрос к таблице, содержащей сведения о сотрудниках (kadr.dbf) и включающей следующие атрибуты:

FАМ — фамилия; IMIA —имя; VOZR —возраст; POL —пол; ADR —адрес; TABN — табельный номер.

Требуется выдать информацию о всех сотрудниках в возрасте 40 лет. В соответствующем столбце таблицы указывается цифра 40. В столбце можно записывать не только значение атрибута, но и знак операции сравнения; по умолчанию принимается знак « = ».

З Основные операторы языка SQL. - student2.ru адание сложных запросов. Допускается задание не только простых, но и сложных запросов, компоненты которых связаны операторами AND (и) или OR (или). Операторы AND и OR в явном виде не указываются при формулировании запроса. При отображении запросов на экране используется следующее правило: если в сложном запросе его компоненты представляют разные атрибуты и должны быть связаны оператором AND, то они записываются в одной строке (рис. 5.2). Если компоненты запроса должны быть связаны операторами OR, то они записываются на разных строках (рис. 5.3).

На рис. 5.2 изображен запрос «Выдать информацию о сотруднике с фамилией Диго и именем Светлана», а на рис. 5.3 — «Выдать информацию о сотрудниках, имеющих фамилию Диго или имя Светлана» (т. е. о всех сотрудниках, которые имеют фамилию Диго, и всех сотрудниках, имеющих имя Светлана).

Переменные для примера. В некоторых случаях при формулировке запроса необходимо использовать так называемые «переменные для примера» («наполнители»). «Переменные для примера» (example variables) также записываются в определенных графах таблицы, но они обозначают не какое-либо определенное значение, а любое. Конкретное значение наполнителя не существенно. «Переменные для примера» используются для установления связей между атрибутами в одной или нескольких таблицах.

Константы, применяемые для задания значений ключей поиска, и переменные, указываемые для примера, должны при записи запроса отличаться друг от друга. В разных СУБД они различаются по-разному: в одних системах «наполнители» подчеркиваются, в других — используются специальные ограничители и т. п.

Связывание файлов. В некоторых запросах могут потребоваться данные из нескольких таблиц. Например, в базе данных, кроме файла KADR, имеется файл «выработка» (VRBT) с полями:

TABN — табельный номер; DAT — дата; KODDET — код детали; KOLV — количество.

В запросе «Выдать информацию о выработке рабочего Евгения Петрова» необходима совместная обработка файлов VRBT и KADR, так как в файле «выработка» нет сведений о фамилиях и именах. «Скелеты» обоих файлов должны быть вызваны на экран. Для связывания этих файлов по полю TABN используются «наполнители». Их значения могут быть любыми, но они должны быть одинаковыми в обеих таблицах.

В Основные операторы языка SQL. - student2.ru примере, представленном на рис. 5.4, в качестве наполнителя используется буква А, и она подчеркивается.

Описание ответа. Кроме задания условия отбора данных при описании запроса должна быть возможность указывать, какие атрибуты и в какой последовательности входят в ответ. Часто также требуется определить упорядоченность данных в ответе. Язык QBE обеспечивает такую возможность, но способы реализации ее в разных системах различны.

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

Технологии проектирования информационных систем

Современные информационные технологии предоставляют широкий набор способов реализации ИС, выбор которых осу­ществляется на основе требований со стороны предполагаемых пользователей, как правило, меняющихся в процессе раз­работки. Для теории принятия решений процесс проектирования ИС – это процесс принятия проектно-конструкторских реше­ний, направленных на получение описания системы (проекта АИС), удовлетворяющего требования заказчика.

Под проектом ИСследует понимать проектно-конструкторскую и технологическую документацию, в которой представлено описание проектных решений по созданию и эксплуатации ИС в конкретной программно-технической среде.

Под проектированием ИС следует понимать процесс преобразо­вания входной информации об объекте проектирования, о мето­дах проектирования и об опыте проектирования объектов ана­логичного назначения в соответствии с ГОСТом в проекте ИС. Следовательно, проектирование ИС сводится к последова­тельной формализации проектных решений на различных стади­ях жизненного цикла ИС: планирования и анализа требований, технического и рабочего проектирования, внедрения и эксплуа­тации ИС.

Объектами проектирования ИСявляются отдельные элемен­ты или их комплексы функциональных и обеспечивающих частей. В составе обеспечивающей части ИС объекта­ми проектирования служат элементы и их комплексы информаци­онного, программного и технического обеспечения системы. Субъектами проектирования ИСвыступают коллек­тивы специалистов, которые осуществляют проектную деятель­ность. Осуществление проектирования ИС предполагает исполь­зование проектировщиками определенной технологии проекти­рования, соответствующей масштабу и особенностям разрабаты­ваемого проекта.

Технология проектирования ИС – это совокупность методо­логии и средств проектирования АИС, а также методов и средств организации проектирования (управление процессом создания и модернизации проекта ИС) (см. рис. 1).

Основные операторы языка SQL. - student2.ru

Рис. 1. Технология проектирования

В основе технологии проектирования лежит технологический процесс, который определяет действия, их последовательность, состав исполнителей, средства и ресурсы, требуемые для выпол­нения этих действий. Технологический процесспроектирования ИС делится на совокупность последовательно-параллельных, связан­ных и соподчиненных цепочек действий, каждое из которых мо­жет иметь свой предмет. Действия, которые выполняются при про­ектировании ИС, могут быть определены как неделимые техно­логические операции или как подпроцессы технологических операций. Все действия могут быть собственно проектировочны­ми, которые формируют или модифицируют результаты проекти­рования, и оценочными действиями, которые вырабатывают по установленным критериям оценки результатов проектирования. Технология проектирования задается регла­ментированной последовательностью технологических операций, выполняемых в процессе создания проекта на основе того или иного метода. Предметом любой выбираемой технологии проектирования должно служить отражение взаимосвязанных процессов проек­тирования на всех стадиях жизненного цикла ИС. К основным требованиям, предъявляемым к выбираемой тех­нологии проектирования, относятся следующие:

– созданный с помощью этой технологии проект должен отве­чать требованиям заказчика;

– выбранная технология должна максимально отражать все эта­пы цикла жизни проекта;

– выбираемая технология должна обеспечивать минимальные тру­до­вые и стоимостные затраты на проектирование и сопро­вождение проекта;

– технология должна быть основой связи между проектирова­нием и сопровождением проекта;

– технология должна способствовать росту производительнос­ти труда проектировщика;

– технология должна обеспечивать надежность процесса проекти­рования и эксплуатации проекта;

– технология должна способствовать простому ведению проект­ной документации.

Основу технологии проектирования ИС составляет методо­логия, которая определяет сущность, основные отличительные тех­нологи­чес­кие особенности. Методология проектированияпредпо­лагает наличие некоторой концепции, принципов проектирования, реализуемых набором методов проектирования, которые, в свою очередь, должны поддерживаться некоторыми средствами проек­тирования.

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

По степени автоматизацииметоды проектирования раз­деляются на методы:

– ручного проектирования, при котором проектирование ком­понентов ИС осуществляется без использования специаль­ных инструментальных программных средств, а программи­рование – на алгоритмических языках;

– компьютерного проектирования, которое производит генера­цию или конфигурацию (настройку) проектных решений на основе использования специальных инструментальных про­граммных средств.

По степени использования типовых проектных решений разли­чают следующие методы проектирования:

– оригинального (индивидуального) проектирования, когда проектные решения разрабатываются «с нуля» в соответствии с требованиями к ИС;

– типового проектирования, предполагающего конфигурацию ИС из готовых типовых проектных решений (программных модулей).

Оригинальное (индивидуальное) проектирование АИС харак­тери­зуется тем, что все виды проектных работ ориентированы на создание индивидуальных для каждого объекта проектов, кото­рые в максимальной степени отражают все его особенности.

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

По степени адаптивности проектных решенийметоды проек­тиро­вания классифицируются на методы:

– реконструкции, когда адаптация проектных решений выпол­няется путем переработки соответствующих компонентов (пе­репрограм­мирования программных модулей);

– параметризации, когда проектные решения настраиваются (перегенерируются) в соответствии с изменяемыми параметрами;

– реструктуризации модели, когда изменяется модель проблем­ной области, на основе которой автоматически перегенери­руются проектные решения.

Сочетание различных признаков классификации методов про­екти­рования обусловливает характер используемой технологии проектирова­ния ИС, среди которых выделяются два основных класса: каноническая и индустриальная технологии(см. табл. 1). Индустриальная технология проектирования, в свою очередь, делится на два подкласса: автоматизированное (использова­ние CASE-технологий) и типовое (параметрически-ориентиро­ванное или модельно-ориентированное) проектирование. Ис­пользование индустриальных технологий проектирования не ис­ключает использования в отдельных случаях канонической технологии. Для конкретных видов технологий проектирования свойствен­но применение определенных средств разработки ИС, которые поддерживают выполнение как отдельных проектных работ, эта­пов, так и их совокупностей. Поэтому перед разработчиками ИС, как правило, стоит задача выбора средств проектирования, которые по своим характеристикам в наибольшей степени соот­ветствуют требованиям конкретного предприятия.

Средства проектирования должны быть:

– в своем классе инвариантными к объекту проектирования;

– охватывать в совокупности все этапы жизненного цикла АИС;

– технически, программно и информационно совместимыми;

– простыми в освоении и применении;

– экономически целесообразными.

Средства проектирования ИС можно разделить на два клас­са: без использования компьютера и с использованием компьютера.

Средства проектирования без использования компьютера применя­ются на всех стадиях и этапах проектирования ИС, это средства организационно-методического обеспечения операций проектирования и в первую очередь различные стан­дарты, регламентирующие процесс проектирования систем, а также единая система классификации и кодирования ин­формации, унифицированная система документации, модели опи­сания и анализа потоков информации и т. п.

Средства проектирования с использованием ЭВМ могут применяться как на отдельных, так и на всех стадиях и этапах про­цесса проектирования ИС и, соответственно, поддерживают раз­работку элементов проекта системы, разделов проекта системы, проекта системы в целом. Все множество средств проектирова­ния с использованием ЭВМ делят на четыре подкласса.

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

Таким образом, средства данного подкласса поддерживают отдель­ные операции проектирования ИС и могут применяться независимо друг от друга.

Ко второму подклассу относят средства, поддержи­вающие проектирование отдельных компонентов проекта ИС. К данному подклассу относятся средства общесистемного назна­чения:

– системы управления базами данных (СУБД);

– методоориентированные пакеты прикладных программ (ре­ше­ние задач дискретного программирования, математичес­кой статистики и т. п.);

– табличные процессоры;

– статистические пакеты прикладных программ (ППП);

– оболочки экспертных систем;

– графические редакторы;

– текстовые редакторы;

– интегрированные ППП (интерактивная среда с встроенными диа­логовыми возможностями, позволяющая интегрировать вышеперечисленные программные средства).

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

К третьему подклассу относятся средства, поддержи­вающие проектирование разделов проекта ИС. В этом подклассе выделяют функциональные средства проектирования.

Функциональные средства направлены на разработку автоматизированных систем, реализующих функции, комплексы задач и задачи уп­равления. Разнообразие предметных областей порож­дает многообразие средств данного подкласса, ориентированных на тип организационной системы (промышленная, непромыш­ленная сферы), уровень управле­ния (например, предприятие, цех, отдел, участок, рабочее место), функ­цию управления (планиро­вание, учет и т. п.).

К функциональным средствам проектирования систем обра­ботки информации относятся типовые проектные решения, фун­кциональные пакеты прикладных программ, типовые проекты. К четвертому подклассу средств проектирования ИС относятся средства, поддерживающие разработку проекта на стадиях и этапах процесса проектирования. К дан­ному классу относится подкласс средств автоматизации проектирования ИС (CASE-средства).

Современные CASE-средства, в свою очередь, классифициру­ются в основном по двум признакам:

1) по охватываемым этапам процесса разработки ИС;

2) по степени интегрированности: отдельные локальные сред­ства (tools), набор неинтегрированных средств,охватывающих большинство этапов разработки ИС (toolkit), и полностью ин­тегрированные средства, связанные общей базой проектных дан­ных – репозиторием (workbench).

Наши рекомендации