Создание приложений для работы с базами данных в сети____________589

просмотра состава базы данных. Она открывает диалоговое окно, в котором в вы-
падающем списке можно указать, о чем вы хотите узнать. Например, если вы вы-
берете раздел Table, вам будет выдан перечень таблиц в базе данных. Более полез-
ны команды Extraction... меню Metadata. Они позволяют извлекать метаданные —
операторы SQL, с помощью которых была создана база данных или отдельные ее
компоненты. Поработайте в этих разделах меню со своей базой данных или с базой
данных ib.gdb, содержащейся на диске — в ней имеется больше различных компо-
нентов, так что с ней работать интереснее.

10.3.4 Обзоры — Views

Обзоры (views) — это дочерние образования таблицы, в которые помещается
некоторое подмножество записей, содержащих все, или только указанные поля.
Пусть, например, в некоторой организации имеется таблица персонала, подобная
используемой нами таблице Pers. Из нее имеет смысл создать обзоры сотрудников,
работающих в каждом подразделении, и раздать их руководителям подразделе-
ний. Тогда каждый руководитель будет иметь базу данных своих сотрудников, но
не будет иметь доступа к сведениям о сотрудниках других отделов. А общая, базо-
вая таблица имеется, например, у руководства предприятия. При этом можно со-
хранять конфиденциальность — в каждом отделе будут сведения только о своих
сотрудниках, а какая-то конфиденциальная информация (какие-то поля) могут во-
обще не включаться в обзоры, а храниться только в общей таблице под паролем и
быть доступными только избранным представителям администрации. Все обзоры
и базовая таблица, на основе которой они созданы, связаны друг с другом. Если в
таблице или в каком-то обзоре проведены изменения (поступил на работу новый
сотрудник, кто-то уволился, у кого-то изменился адрес, телефон, семейное поло-
жение), все они тут же отразятся во всех обзорах, в которых есть соответствующие
записи, и в базовой таблице.

Синтаксис оператор создания обзора следующий:

CREATE VIEW <имя обзора> AS SELECT <список полей> FROM <таблица>

WHERE <условие>

В нашем примере этот оператор может иметь вид:

CREATE VIEW DEP_1 AS SELECT Fam, Nam, Par, Year_b, Sex FROM Pers

WHERE Dep = 'Цех Г

Уничтожение ранее созданного обзора осуществляется оператором:

DROP VIEW <имя обзора>

Например, уничтожить обзор, созданный в приведенном выше примере, мож-
но оператором:

DROP VIEW Dep_l

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