Программирование >>  Разработка пользовательского интерфейса 

1 ... 86 87 88 [ 89 ] 90 91 92 ... 147


converted to PDF by HupBaH9I Триггеры создаются командой CREATE TRIGGER, имеющей следующий синтаксис:

CREATE TRIGGER [owner.]trigger name ON [owner.]table name

FOR {INSERT, UPDATE, DELETE}

[WITH ENCRYPTION] AS sql statements

Есть возможность использовать альтернативный синтаксис, который выглядит так:

CREATE TRIGGER [owner.]trigger name ON [owner.]table name

FOR {INSERT, UPDATE} [WITH ENCRYPTION] AS

IF UPDATE (column name)

[{AND OR} UPDATE (column name)...] sql statements

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

Предложение WITH ENCRIPTION, так же как и в случае с представлениями, служит для того, чтобы скрыть от постороннего глаза SQL выражение, которое он запускает.

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

8.2. Использование Visual FoxPro для разработки клиентского приложения

Итак, в предыдущем параграфе мы освоили необходимый минимальный набор команд, которого достаточно, чтобы начать работать с данными на SQL Server. Настала пора обсудить вопросы построения клиентской части, при этом вспомнив набор из шести операций, которые нам доступны из приложения front-end. В итоге получается, что из клиентской части нам доступны все операции. На всякий случай не забудьте про возможность недостаточного совершенства имеющегося драйвера ODBC.

В этом параграфе мы обсудим вопросы создания приложения типа клиент-сервер с помощью Visual FoxPro.

Visual FoxPro предоставляет следующие средства для работы с данными, имеющими другой формат:

1. Конструктор соединения (Connection Designer). Альтернативно можно использовать команду CREATE CONNECTION. В этом случае для многих установок надо использовать функцию DBSETPROP().

2. Конструктор представления (View Designer). Можно использовать команду CREATE SQL VIEW. В этом случае свойства полученного представления необходимо изменять с помощью функции DBSETPROP().

3. Набор функций SQL pass-through позволяет контролировать работу сервера с помощью диалекта SQL самого сервера. Главным образом используется для получения выборки данных для дальнейшей обработки в клиентской части приложения. В то же время вам становятся доступны практически все команды и возможности сервера.

Конструктор соединения используется для создания и модификации соединений, хранимых в базе данных. Активизируется Конструктор соединения, так же как и другие дизайнеры в Visual FoxPro, тремя способами:

1. В меню File выполнить команду New, затем выбрать Connection.

2. Из командного окна с помощью команды CREATE CONNECTION.

3. Из Project Manager, выбрав Connection, New.



Add Data Source

Select which ODBC driver you want to use Jjqm the list, then choose OK.

Installed ODBC Drivers:

ICR Oracle?

CR SQLBase CR Sybase System 10 Microsoft Access Driver ( .mdbl fvlicrosoft dBase Driver ( .dbf) Microsoft Excel Driver ( .xls) Microsoft FoxPro Driver [ M]

Help

Рис. 8.2. Выбор необходимого ODBC драйвера

Создав Data Source, мы имеем все для подготовки соединения и записи его определения в текущую базу данных. Выберите из комбинированного списка с заголовком Data Source ваш Data Source (извините за тавтологию), затем введите ваше пользовательское имя в текстовое поле UserID и пароль в текстовое поле PassWord. Сверху от трех полей, которые мы заполнили, находятся две кнопки выбора, правая называется Connection String . Если вам больше нравится вводить Connection String, то выберите эту кнопку выбора, - в таком случае вы берете на себя не очень обременительную, но все-таки обязанность написать строку соединения самостоятельно, не делегировав эти права Visual FoxPro. Вам нужно набрать что-либо подобное (рис. 8.3):

Соединения хранятся только в базах данных, поэтому необходимо, чтобы во время создания соединения была открыта база данных, лучше та, в которой это соединение будет использоваться.

После запуска вам необходимо последовательно заполнить текстовые поля, которые называются Data Source, UserID и Password. Здесь есть один момент, который необходимо отметить. Data Source уже должен быть создан посредством Администратора ODBC. Как уже указывалось, обычно после установки Visual FoxPro, Администратор ODBC уже присутствует на вашем компьютере. Запустите Администратор ODBC и создайте Data Source с использованием ODBC драйвера, в нашем случае это SQL Server (рис. 8.2). С помощью кнопки Drivers вы можете проверить наличие имеющихся на компьютере драйверов ODBC. Для создания Data Source необходимо нажать на кнопку Add и в появившемся диалоговом окне заполнить необходимые поля. Имена DataSource старайтесь давать осмысленные, чтобы в дальнейшем помнить, какой Data Source за что отвечает. Далее заполните имя сервера и в диалоге Options укажите имя базы данных, к которой вы будете подсоединяться. В примерах мы будем подсоединяться к базе данных Pubs, которая поставляется как образец с MS SQL Server. В зависимости от используемого драйвера диалоговые окна, открывающиеся после нажатия кнопки Add и выбора нужного драйвера, несколько различаются, но, как правило, главное, что нам нужно - это имя базы данных, доступ к таблицам которой мы хотим иметь, путь или имя папки, в которой хранятся таблицы, если приложение не работает с базой данных как с контейнером таблиц.



Connection Do signer - Connecti

Dta Souca. LtHiid, Pasvwfd

Conneciion inrfl

firmed Siring

D 5H -1 GOT □ SQ L;U serl D -lAM GEli 1U5 J

Q iiplair OD&C Looin Prampts

F Anctwonous E eojti(jn Г Difplay Waning? atch Processing

17 AUonubcLBrcactiGns

CoBnaQliofi (asdt

ill 5

Wait Tine (msj:

:£!

Рис. 8.3.

DSN=IGOTOSQL;UserID=IAMGENIUS; Password=JesusChristSuperStar;Database=Pubs

При этом не используйте никаких кавычек, иначе ODBC вместо установки соединения вернет ошибку. В случае использования строки соединения вы сами выполняете ту работу, которую выполнил бы Visual FoxPro, в том случае, если бы вы ввели всю информацию раздельно в соответствующие текстовые поля.

Далее нужно выбрать, будет ли появляться диалоговое окно с просьбой ввести пользовательское имя при каждом использовании соединения для доступа к таблицам базы данных на сервере. Предлагаются три варианта выбора:

1. Окно будет появляться, если не будет указано пользовательское имя в соединения.

2. Окно будет появляться всегда.

3. Окно не будет появляться никогда.

строке

Команда CREATE CONNECTION может использоваться для того, чтобы создавать соединения программным путем, правда, при этом если вы не укажете предложение DATASOURCE, то все равно на экране появится Конструктор соединения. База данных также должна быть открыта, как и при создании Соединения с помощью Конструктора соединения.

Соединение, созданное в предыдущем примере, программным путем можно создать так:

CREATE CONNECTION mysqlconnect ; DATASOURCE igotosql ;

USERID Iamgenius PASSWORD JesusChristSuperStar

Как уже было упомянуто, SQL pass-thtough - это средство по созданию SQL команд и передачи их в базу данных SQL. Первой мы рассмотрим функцию SQLCONNECT(), которая устанавливает соединение с источником данных. С помощью этой функции можно создать стандартное соединение (Standard Connection), строку соединения (Connect string) и поименованное соединение (Name Connection).

Ниже приводятся примеры для создания каждого типа соединения.

Стандартное соединение

hndl=SQLCONNECT(igotosql,iamgenius) Строка соединения

hndl=SQLCONNECT(igotosql,iamgenius, JesusChristSuperStar,pubs)

Поименованное соединение

hndl=SQLCONNECT(mysqlconnect)



1 ... 86 87 88 [ 89 ] 90 91 92 ... 147

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика