Действия, выполняемые при добавлении новых записей
Действия, выполняемые при добавлении новых записей
Триггеры позволяют не только проверять условие достоверности ввода данных на уровне записей, но и выполнять требуемые действия при добавлении, удалении и изменении записей. Рассмотрим один из примеров использования триггера insert.
В некоторых случаях полезно иметь таблицу, в которой содержится список новых покупателей, которые обратились в вашу фирму за последний месяц. Данная таблица очищается в начале каждого месяца и может использоваться для рассылки рекламной информации новым покупателям. Для хранения списка новых покупателей используется таблица Newcustomer.
В данном примере определим триггер insert для таблицы customer:
Откройте окно проекта sales. Выберите таблицу customer, содержащую список товаров, и нажмите кнопку Modify (Модифицировать). Для определения свойств таблицы перейдите на вкладку Table (Для создания хранимой процедуры предназначена группа Stored Procedures окна проекта
Для создания хранимой процедуры предназначена группа Stored Procedures окна проекта
Открывается окно редактирования хранимых процедур (рис. 14.3), которое содержит все ранее созданные хранимые процедуры, включая процедуры, создаваемые автоматически при определении условий целостности базы данных.
Условия достоверности, хранимые процедуры, триггеры, представления данных
В реляционных базах данных, к которым относится и Visual FoxPro, для управления данными могут использоваться не только прикладные програм мы, но и непосредственно сервер базы данных. Такая возможность реал ту ется с помощью условий достоверности ввода данных, триггеров и храни мых процедур, которые являются неотъемлемой частью базы данных.
Удобным средством просмотра хранящейся в базе данных информации я и ляются представления данных, которые содержат результат выборки из о.пнш или нескольких таблиц, удовлетворяющих заданному условию. Предстан кния данных имеют много общего с запросами и таблицами. Так же, как и для запросов, вы можете связывать несколько таблиц, указывать отображаемые поля, задавать условие выборки. Просмотр представления данных orv ществляется аналогично просмотру таблицы Visual FoxPro.
Условия достоверности ввода данных на уровне записей
Условия достоверности позволяют контролировать ввод данных среде там и сервера на уровне записей и полей таблицы. В первом случае условие опрг деляется в окне ввода свойств таблицы, а во втором — в окне свойств и<> ш таблицы. Проверка на уровне записи обычно используется, если необходима проверка при добавлении или удалении записи, а также, если условие про верки изменения записи требует анализа более одного поля.
При определении условий достоверности ввода данных используются трипе ры и хранимые процедуры. Триггеры задают действия, выполняемые прибавлении, удалении или изменении записей таблицы. Хранимые процедуры cо держат наиболее часто используемые процедуры, выполняемые сервером (и нл данных. Если вы определили условия достоверности ввода данных, их при верка осуществляется независимо от способа изменения данных в таблице
Для определения свойств таблицы откройте окно конструктора для выбранной таблицы и перейдите на вкладку Table
Хранимые процедуры
Хранимые процедуры
Для создания хранимой процедуры выполните следующие действия:
В окне проекта выберите базу данных. Перейдите в группу Stored Procedures (Хранимые процедуры). Нажмите кнопку New (Новый) (рис. 14.2).Использование представлений данных
Использование представлений данных
Таблицы базы данных предназначены для хранения данных, а для просмотра данных предпочтительнее использовать представления данных, которые позволяют объединять связанные таблицы, выбирать интересующие вас поля таблиц или объединить несколько полей в одно поле, вычислять итоговые значения, определять новые имена для выбираемых полей таблицы и задавать условие выборки данных. После создания представления данных вы можете использовать его как обычную таблицу в формах, отчетах и при создании запросов.
Представления являются незаменимым средством для ограничения доступа пользователей к отдельным записям таблиц. В этом случае вся работа с базой данных осуществляется через представления данных.
Использование триггеров и хранимых процедур
Использование триггеров и хранимых процедур
Рассмотрим несколько примеров использования триггеров и хранимых процедур для определения условия достоверности ввода данных и начальных значений полей таблицы.
Окно Data Session после открытия представления данных Sumcust
Окно Data Session после открытия представления данных Sumcust
Окно конструктора представлений данных
Окно конструктора представлений данных
Окно редактирования хранимых процедур
Окно редактирования хранимых процедур
Определение свойств таблицы
Определение свойств таблицы
Для определения достоверности ввода данных могут использоваться триггеры добавления и изменения и поля ввода Rule (Условие) и Message (Сообщение) области Record validation (Проверка правильности ввода записей). В поле Rule (Условие) вводится логическое выражение, которое может содержать вызов хранимой процедуры. Если значение этого выражения равно True (Истина), то считается, что введены допустимые данные и разрешается переход на другую запись или закрытие таблицы. В противном случае выводится сообщение об ошибке, которое было задано в поле Message (Сообщение).
Определение условия достоверности...
procedure CheckMaxCredit
nCdOrder=Ordsaled.icdOrder && номер текущего заказа
* вычисляем сумму всех введенных позиций заказа
SELECT SUM(Ordsaied.nQuant*Ordsaled.nUnitPrice);
FROM Ordsalem, Ordsaied;
WHERE Ordsalem.icdOrder = Ordsaied.icdOrder;
AND Ordsaied.icdOrder=nCdOrder;
INTO ARRAY nSum
* определяем максимальный кредит клиента из таблицы Customer
SELECT Customer
SEEK Ordsalem.icdCustomer
* если запись о данном покупателе в таблице Customer есть, возвращаем
* результат сравнения суммы заказа с максимальным кредитом
IF FOUND( )
RETURN nSum(l) < CUSTOMER.yCreditLimit
ELSE
RETURN .F.
ENDIF
RETURN
Определение условия достоверности для поля nquant
Определение условия достоверности для поля nquant
Определение значения поля при добавлении новой записи
Определение значения поля при добавлении новой записи
Рассмотрим следующий пример. Чтобы создать для таблицы customer первичный ключ, в таблицу было добавлено поле, содержащее код клиента. Информация в данное поле должна заноситься программно, чтобы не нарушалась уникальность ключа. Для формирования и записи в таблицу кода клиента при добавлении новой записи создадим хранимую процедуру GetAutoNewNum.
Откройте окно проекта sales. Создайте в базе данных sales таблицу Records, которая будет использоваться для хранения последних введенных значений кода. Данная таблица содержит два поля. Первое поле предназначено для ввода наименования таблицы, второе — для указания последнего введенного числового кода в данную таблицу. При вызове хранимой процедуры значение второго поля указанной таблицы увеличивается на единицу, и процедура возвращает новое значение кода. Введите в созданную таблицу название таблицы Customer и число, указывающее количество записей, содержащихся в ней. Выберите в окне проекта таблицу customer и нажмите кнопку Modify (Модифицировать). Для определения свойств поля, содержащего код клиента, перейдите на вкладку Fields (Поля). В поле ввода Default value (Значение по умолчанию) области Field validation (Проверка правильности ввода) задайте вызов функции GetAutoNewNum о , введя Getautonewnum("'Customer ") (рис. 14.4). Нажмите кнопку ОК для закрытия конструктора таблицы. Теперь необходимо определить функцию GetAutoNewNum. Откройте окно редактирования хранимой процедуры и введите следующие команды:FUNCTION GetAutoNewNum
LPARAMETERS cNameAliasGANN
LOCAL nDefaultValueGANN
IF TYPE("cNameAliasGANN")="L"
= GetMessage ("Нужно ввести имя таблицы для определения начального
значения в таблице"+ALIAS()+"!",48,"Функция GetAutoNewNum")
RETURN 1
ENDIF
cNameAliasGANN=ALLTRIM (UPPER (cNameAliasGANN) )
DO OpenTable WITH "SALES!RECORDS", 1
IF !SEEK{cNameAliasGANN)
APPEND BLANK
REPLACE NameOfTable WITH cNameAliasGANN
REPLACE ColRecordsInTable WITH 1
ELSE
REPLACE ColRecordsInTable WITH ColRecordsInTable+1
ENDIF
nDefaultValueGANN=ColRecords!nTable
SELECT (cNameAliasGANN)
RETURN nDefaultValueGANN
Параметры представления данных
Параметры представления данных
В Visual FoxPro при создании представления данных вы можете задать параметры представления. Значения этих параметров будут запрашиваться при открытии представления. Например, в предыдущем примере мы создали представление данных, которое содержит итоговые объемы продаж товаров. Использование параметров позволит вам выбирать не все продажи, а объем продаж за определенный интервал времени, продажи конкретного товара или покупки определенного клиента.
При открытии представления, для которого заданы параметры, запрашиваются значения заданных параметров, и выборка данных осуществляется с учетом введенных значений. Для определения параметров используется команда View Parameters (Параметры представления данных) из меню Query (Запрос).
Добавим в созданное в предыдущем примере представление данных параметр, указывающий дату, для которой будет осуществляться выборка.
Выберите в окне проекта представление данных sumCust и нажмите кнопку Modify (Модифицировать). В окне конструктора представления данных в меню Query (Запрос) выберите команду View Parameters (Параметры представления данных). На экране открывается соответствующее диалоговое окно. Это диалоговое окно содержит список всех параметров представления, для каждого из которых заданы имя параметра и его тип. Введите параметр Date_View и определите для него тип данных Date. Определите условие выборки данных для заданной даты. Для этого перейдите на вкладку Filter (Фильтр) и добавьте условие для поля ordsaiem.dDoc. Для выбора значения за конкретную дату используйте оператор ==, а в поле ввода Example (Образец) введите ?Date_View.
Редактирование или удаление хранимых процедур,
Предупреждение
Редактирование или удаление хранимых процедур, которые Visual FoxPro создал автоматически при определении условия целостности данных, могут привести к непредсказуемым последствиям.
Для редактирования хранимых процедур в Visual FoxPro вы можете использовать команду MODIFY PROCEDURE, которая открывает окно редактирования хранимых процедур текущей базы данных.
Для удаления хранимой процедуры необходимо в окне редактирования выделить текст удаляемой процедуры и нажать клавишу <Delete> или в окне конструктора проекта установить курсор на ее наименование и выполнить команду Remove (Удалить) окна проекта.
При выборе таблицы из этого списка...
При выборе таблицы из этого списка в области Field name (Имя таблицы) отображается список выбранных полей. Для каждого поля вы можете определить признаки ключевого поля и разрешения модификации, которые устанавливаются с помощью флажка в столбцах, заголовки которых содержат изображение ключа и карандаша соответственно.
Кнопка Reset Key (Сброс ключа) устанавливает исходное состояние флажков разрешения модификации и ключевых полей. При этом сбрасываются все флажки в столбце разрешения модификации, а флажки в столбце признака ключевых полей устанавливаются только для тех полей, которые являются первичными ключами.
Кнопка Update All (Обновить все) устанавливает флажки в столбце разрешения модификации для всех полей, кроме ключевых.
Просмотр объема продаж товаров клиентам
Просмотр объема продаж товаров клиентам
Рассмотрим пример создания представления данных, которое содержит итоговую сумму покупок клиентов. Представление данных будет содержать наименование предприятия, наименование товара и итоговую сумму покупок клиентом каждого товара.
Откройте окно конструктора представлений и добавьте в него таблицы Customer, Ordsalem, Ordsaled И Goods, используемые для с оздания нового представления. Установите связи между размещенными в окне конструктора таблицами. При создании связей между таблицами необходимо учитывать, что связь между ними осуществляется по следующим полям: Customer и Ordsalem — по коду клиента; Ordsalem и Ordsaled — по код у заказа; Ordsaled и Goods по коду товара.Если в конструкторе базы данных вы определили постоянные связи между таблицами, то в окне конструктора они установятся автоматически.
В список Selected fields (Выбранные поля) перенесите название фирмы, имя клиента и наименование товара. Добавьте в список Selected fields (Выбранные поля) вычисляемое поле, содержащее сумму продаж:SUM(Ordsaled.nQuant * Ordsaled.nUnitPrice)
Задайте группировку данных по названию предприятия и наименованию товара. Для сохранения представления данных в меню File (Файл) выберите команду Save As (Сохранить как). В поле View Name (Имя представления) открывшегося диалогового окна Save (Сохранить) укажите имя создаваемого представления данных Sumcust и нажмите кнопку ОК. Просмотрите созданное представление данных, нажав кнопку Run (Выполнить) на стандартной панели инструментов. Закройте окно конструктора представлений.Вы можете просмотреть созданное представление данных в окне Data Session (Окно данных). Для этого выполните следующие действия:
В меню Windows (Окна) выберите команду Data Session (Окно данных). Нажмите кнопку Browse (Обзор). В открывшемся диалоговом окне Open (Открыть) в области Select (Выбор) установите опцию Views (Представления данных). Выберите из списка Views in database (Представления данных в базе данных) (рис. 14.9) требуемое представление данных и нажмите кнопку ОК.Просмотр представления данных
Просмотр представления данных
После задания в окне конструктора представлений условий для выбора записей и указания результирующих полей, вы можете просмотреть результаты выполнения представления данных.
Для этого выполните одно из следующих действий.
Нажмите кнопку Run (Запустить) на стандартной панели инструментов. Выберите команду контекстного меню Run Query (Выполнить запрос). Выберите в меню Query (Запрос) команду Run Query (Выполнить запрос). Нажмите комбинацию клавиш <Ctrl>+<Q>.На экране появится сформированное представление данных.
Для просмотра созданного представления данных вы можете также использовать окно проекта или окно Data Session (Окно данных). Чтобы просмотреть представления данных в окне проекта, достаточно установить на него курсор и нажать кнопку Browse (Обзор). Если вы просматриваете представление в окне Data Session (Окно данных), откройте его как обычную таблицу и нажмите кнопку Browse (Обзор).
Проверка удовлетворения введенных значений заданному условию
Проверка удовлетворения введенных значений заданному условию
В данном примере определим условие проверки достоверности ввода данных для таблицы ordsaied, содержащей информацию о заказе. Например, при формировании накладной отпуска товара в кредит необходимо сравнивать итоговую сумму заказываемых товаров с максимально допустимым кредитом для данного клиента, содержащимся в таблице customer. Проверку будем осуществлять при вводе каждой позиции заказа.
Откройте окно проекта sales. Выберите в окне проекта таблицу ordsaied и нажмите кнопку Modify (Модифицировать). Для определения свойств таблицы перейдите на вкладку Table (Редактирование данных
Редактирование данных
В Visual FoxPro представления данных могут использоваться не только для просмотра результатов выборки данных, но и для редактирования таблиц, которые использовались при его создании. Создавая представления данных, вы можете указать признак редактирования выбираемых полей базовых таблиц. Таким образом, вы можете задать список полей для просмотра и редактирования. Например, при изменении фамилии, имени и отчества клиента вы должны видеть на экране наименование фирмы, фамилию, имя и отчество клиента, но можете редактировать только поля, содержащие фамилию, имя и отчество.
Для определения таблиц и полей, которые будут изменяться при модификации данных с помощью представления, используется вкладка Update Criteria (Критерий обновления).
Перечень всех таблиц, поля которых используются для создания представления, приведен в раскрывающемся списке Table (
Сохранение созданного представления данных
Сохранение созданного представления данных
Сформированное в окне конструктора представление данных можно сохранить, выполнив следующие действия:
В меню File (Файл) выберите команду Save As (Сохранить как). В поле View Name (Имя представления) открывшегося диалогового окна Save (Сохранить) (рис. 14.8) укажите имя созданного представления данных. Нажмите кнопку ОК.
Для открытия представления данных вы
Совет
Для открытия представления данных вы можете также в командном окне или в программе воспользоваться командой USE.
Создание представления данных
Создание представления данных
Для создания представления используется конструктор представлений данных. Существует несколько альтернативных способов его вызова.
Выберите в меню File (Файл) команду New (Новый). В открывшемся диалоговом окне установите опцию View (Представление данных) и нажмите кнопку New file (Новый файл). В окне конструктора проекта на вкладке Data (Данные) перейдите в раздел Local Views (Локальные представления данных) выбранной базы данных и нажмите кнопку New (Новый). Введите в командном окне Command команду CREATE VIEW.
Триггеры
Таблица 14.1. Триггеры
Триггер | Описание |
Insert (Вставить) | Определяет действия, которые будут выполняться после добавления новой записи в таблицу |
Update (Обновить) | Определяет действия, которые будут выполняться после изменения записи таблицы |
Delete (Удалить) | Определяет действия, которые будут выполняться после удаления записи из таблицы |
Для определения триггеров введите в поля ввода Insert trigger (Вставить триггер), Update trigger (Обновить триггер) или Delete trigger (Удалить триггер) вкладки Table (
Назначение кнопок панели инструментов View Designer
Таблица 14.2. Назначение кнопок панели инструментов View Designer
Название | Назначение |
Add Table (Добавить таблицу) | Добавляет в представление новую таблицу или представление данных |
Remove Table (Удалить таблицу) | Удаляет выбранную таблицу из запроса |
Add Join (Добавить объединение) |
Открывает диалоговое окно Join Condition
(Условие объединения) для задания условия объединения таблиц |
Show the SQL windows
(Показать SQL-оператор) |
Открывает диалоговое окно, в котором отображается SQL-оператор, соответствующий созданному представлению данных |
Maximize the table view (Раскрыть панель представления таблиц) | Раскрывает на весь экран панель отображения используемых в представлении таблиц. Повторное нажатие на эту кнопку возвращает панели первоначальный размер |
Таблица конструктора таблиц. В...
Таблица конструктора таблиц. В поле ввода Insert trigger (Триггер добавления) задайте вызов функции AddNewCustomer о, которая добавляет новую запись в таблицу Newcustomer. Для добавления новой хранимой процедуры AddNewCustomer откройте окно редактирования хранимых процедур и добавьте в него следующий текст:
procedure AddNewCustomer
nCurCdCustomer= icdCustomer
SELECT NewCustomer
APPEND BLANK
REPLACE icdCustomer WITH nCurCdCustomer
SELECT NewCustomer
RETURN .T.
Таблица окна конструктора выбранной...
Таблица окна конструктора выбранной таблицы операторы сравнения, вызов хранимой процедуры или любое логическое выражение. Если результат вычисления выражения равен True (Истина), то считается, что введены допустимые значения. В противном случае сохранения введенных данных не происходит и формируется сообщение об ошибке. При использовании хранимых процедур вы сможете не только проверить условие достоверности ввода данных, но и задать действия, выполняемые при добавлении, удалении и изменении данных.
Вызов триггера Delete (Удалить) осуществляется:
при выполнении команды DELETE; когда вы помечаете запись на удаление в режиме Browse (Обзор) или Edit (Правка).Вызов триггера insert (Вставить) осуществляется в следующих случаях:
при выполнении команд APPEND FROM, APPEND FROM ARRAY,-APPEND BLANK; при добавлении в таблицу новой записи в режиме Browse (Обзор) или Edit (Правка); при выполнении команд IMPORT, INSERT SQL, RECALL; при снятии метки об удалении записи в режиме Browse (Обзор) или Edit (Правка).Триггер update (Обновить) вызывается, когда:
наступает любое событие, которое приводит к модификации записи (например, при изменении значения поля); выполняются команды GATHER, REPLACE, REPLACE FROM ARRAY, UPDATE SQL.При использовании триггеров необходимо учитывать ограничения, имеющиеся в Visual FoxPro.
При модификации записей, помеченных для удаления, и выполнении команды PACK триггеры не вызываются. Выполнение команды ZAP не вызывает триггер Delete (Удалить). При использовании буферизации ввода триггер update (Обновить) вызывается только при вызове функции TABLEUPDATE (),
Для удаления триггера в окне конструктора перейдите на вкладку Table (
Триггеры
Триггеры
В Visual FoxPro для таблиц, входящих в состав базы данных, вы можете определить триггеры, приведенные в табл. 14.1.
Условия достоверности ввода данных на уровне поля таблицы
Условия достоверности ввода данных на уровне поля таблицы
Для определения условия достоверности ввода данных на уровне поля таблицы используется область Field validation (Проверка правильности ввода) вкладки Fields (Поля) окна конструктора таблиц. В поле Rule (Условие) задается логическое выражение, а в поле Message (Сообщение) — сообщение, отображаемое на экране, если логическое выражение возвращает значение False (Ложь).
Определим условие достоверности данных для поля nquant, содержащего количество купленного товара, таблицы ordsaied. При вводе количества товара необходимо автоматически проверять его фактическое количество на складе.
Для определения данного условия достоверности данных выполните следующие действия:
Откройте проект sales. Перейдите на вкладку Data (Данные). В разделе Tables (Таблицы) выберите таблицу ordsaied и нажмите кнопку Modify (Модифицировать). В окне конструктора таблицы выберите поле nquant. В поле ввода Rule (Условие) области Field validation (Проверка правильности ввода) введите вызов функции checkQuant (). В поле ввода Message (Сообщение) введите текст сообщения: "Заказанное количество товара превышает его фактическое количество"Чрис. 14.6). Откройте окно редактирования хранимых процедур и добавьте в него новую процедуру CheckQuant:procedure CheckQuant nCdGoods = Ordsaied.iCdGoods
* определяем фактическое количество товара SELECT nFactQuant;
FROM Goods;
WHERE iCdGoods = nCdGoods;
INTO ARRAY nQuant
* сравниваем заказанное количество с имеющимся на складе
RETURN Ordsaied.nQuant(1) <= nQuant(1)
Условия достоверности ввода данных на уровне записей
Условия достоверности ввода данных на уровне записей Триггеры Хранимые процедуры Использование триггеров и хранимых процедур Условия достоверности ввода данных на уровне поля таблицы Использование представлений данных Создание представления данных Сохранение созданного представления данных Просмотр представления данных Просмотр объема продаж товаров клиентам Параметры представления данных Редактирование данных
Установка редактируемых полей
Установка редактируемых полей
Рассмотрим последовательность действий при создании представления данных, позволяющего редактировать информацию в полях, содержащих фамилию, имя и отчество клиента.
Откройте окно конструктора представлений и добавьте в него таблицу customer. В список Selected fields (Выбранные поля) перенесите наименование фирмы ccompany, а также clastname, cf irstname и csecondname. Для определения редактируемых полей перейдите на вкладку Update Criteria (Критерий обновления). Установите флажки разрешения редактирования для полей clastname, cfirstname и csecondname. Установите флажок Send SQL updates (Отправить SQL-обновление). Сохраните представление данных и откройте его для редактирования данных в режиме Browse (Обзор).В поле ввода Rule (Условие) области...
В поле ввода Rule (Условие) области Record validation (Проверка правильности ввода записи) задайте вызов функции checkMaxCredit о, которая сравнивает итоговую сумму заказа с максимально допустимым кредитом клиента. В поле Message (Сообщение) области Record validation введите текст сообщения (рис. 14.5) "Вы превысили допустимую сумму кредита клиента".
Выбор представления данных
Выбор представления данных
Задание имени представления данных
Задание имени представления данных
Для открытия сохраненного представления данных из окна проекта необходимо установить на него курсор и нажать кнопку Modify (Модифицировать).
Задание вызова хранимой процедуры
Задание вызова хранимой процедуры
Окно данных) показывается не только
Замечание
При открытии представления данных в окне Data Session ( Окно данных) показывается не только выбранное представление, но и все таблицы, используемые при его создании (рис, 14.10).
Вопросительный знак перед именем параметра
Замечание
Вопросительный знак перед именем параметра является признаком использования параметра.
Сохраните представление данных. Для просмотра итоговых продаж товаров за конкретный день откройте представление данных SumCust. Поскольку для представления определен параметр, на экране появляется диалоговое окно View Parameter (Параметр представления данных), предлагающее ввести значение параметра.
Если при создании представления данных
Замечание
Если при создании представления данных вы задали несколько параметров, то для ввода значения каждого параметра будет открываться отдельное окно.
Введите значение параметра и нажмите кнопку ОК. На экране появится выборка записей, соответствующих дате, введенной в окне View Parameter (Параметр представления данных).
Параметры представления данных) для ввода
Замечание
Диалоговое окно View Parameter ( Параметры представления данных) для ввода значения параметра рекомендуется использовать только при отладке представления. Вы можете определить переменные, наименования которых совпадают с именем параметра, и присвоить им требуемые значения в программе или в форме. В этом случае при открытии представления параметры запрашиваться не будут.
Все выбранные на вкладке Update
Замечание
Все выбранные на вкладке Update Criteria (Критерий обновления) параметры действительны только в том случае, если установлен флажок Send SQL updates (Отправить SQL-обновление).
в словаре базы данных, поэтому
Замечание
Описание представления данных хранится в словаре базы данных, поэтому для их просмотра вы должны предварительно открыть базу данных.
При любом из вариантов вызова
Замечание
При любом из вариантов вызова для создания представления данных вы можете воспользоваться услугами мастера, который аналогичен мастеру создания запросов.
При вызове конструктора представлений открывается диалоговое окно Add Table and View (Добавить таблицу или представление данных), позволяющее разместить в конструкторе таблицы и созданные ранее представления данных. Для отображения представлений в этом диалоговом окне необходимо в области Select (Выбор) установить опцию Views (Представления данных). Выбрав необходимую таблицу или представление данных, перенесите их в конструктор, нажав кнопку Add (Добавить). Сформировав список таблиц, нажмите кнопку Close (Закрыть) для закрытия диалогового окна Add Table and View (Добавить таблицу или представление). Выбранные таблицы размещаются в открывшемся на экране окне конструктора представлений данных (рис. 14.7).
Окно конструктора представлений данных похоже на окно конструктора запросов и отличается от последнего некоторыми дополнительно предоставляемыми функциями.
Можно указать поля для модификации данных. Можно задать параметры, значения которых будут запрашиваться при открытии представления данных. Можно определить количество выбираемых записей. Для формирования представления данных вы можете использовать команды меню Query (Запрос) и кнопки на панели инструментов View Designer (Конструктор представления данных). Функции кнопок панели инструментов View Designer описаны в табл. 14.2.
в отличие от сохранения запроса,
Замечание
Обратите внимание, что в отличие от сохранения запроса, вам не требуется указывать место расположения представления, т. к. описание представления хранится в самой базе данных.