Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР методичка прог в КС / метод_лаб_программирование_КС_071900_2010.doc
Скачиваний:
46
Добавлен:
10.06.2015
Размер:
337.41 Кб
Скачать

Контрольные вопросы

1. Организация обмена данными между SQL – совместимой базой данных и Word.

2. Каким образом можно произвести обмен данными между SQL – совместимой базой данных и Excel?

Лабораторная работа № 15 Организация обмена данными. Взаимодействие sql-сервера и локальных баз данных Access и FoxPro

Цель работы: изучить принципы организации обмена данными между SQL – совместимой и локальной базой данных.

СУБД Microsoft Access занимает промежуточное положение между чисто пользовательскими системами и системами разработки приложений. В процессе изучения возможностей этого программного продукта лучше всего прослеживается логика реляционных баз данных, что является немаловажным фактором для начинающих пользователей. К сожалению, рассмотрение всех возможностей Microsoft Access выходит за рамки задач данной книги, поэтому перейдем к описанию процесса подключения этой системы к SQL-серверу.

В Microsoft Access существует два способа получения информации из баз данных SQL-сервера: импортирование данных и осуществление связи между таблицами. При импортировании в системе будет создана таблица с аналогичными данными, как у таблицы базы данных SQL-сервера. О другой стороны, осуществление связи между таблицами подразумевает создание в системе ссылки на таблицу базы данных. В любом случае вся вводимая информация будет автоматически изменяться в таблице SQL-сервера.

Для получения данных из SQL-сервера а в систему Microsoft Access необходимо выполнить команду «Внешние данные / Импорт» или «Внешние данные / Связь с таблицами» меню Файл. Данное действие выведет на экран диалог выбора файлов для добавления в систему Microsoft Access. В списке «Тип файлов» этого диалога необходимо выбрать ODBC Databases, что позволит вызвать окно выбора источника данных ODBC.

В представленном диалоге следует выбрать закладку «Источник данных компьютера» после чего в списке определить необходимый источник данных DSN. В нашем случае им будет созданный в предыдущем разделе Соединение. Если требуемого источника нет в списке, то его можно создать, используя кнопку Создать данного диалога.

После определения источника данных система выведет на экран запрос имени и пароля пользователя для подключения к SQL-серверу, а затем будет предложен перечень всех таблиц, к которым осуществлялось подключение. Выберите необходимые таблицы, после чего система добавит их в список таблиц Microsoft Access.

При выборе команда «Внешние данные / Связь с таблицами» меню Файл, т.е. при определении связи с таблицей, а не импортировании ее, система выведет диалог указания ключевого поля, другими словами, однозначный индекс, по которому будет осуществляться проверка целостности.

По завершении процесса добавления таблицы базы данных SQL-сервера ее имя отобразится в списке таблиц системы Microsoft Access. При этом слева от ее имени будет расположен значок, наглядно представляющий способ создания этой таблицы.

Взаимодействие sql-сервера и Visual FoxPro

Для организации подключения к таблицам базы данных SQL-сервера в системе Microsoft Visual FoxPro необходимо в начале создать так называемое соединение (Connection), после чего на основании этого соединения создать удаленное представление (Remote View).

Итак, создадим новый проект, используя команду New меню File, после чего в появившемся диалоговом окне определим создание проекта (Project). Создайте в новом проекте базу данных, используя кнопку New в проводнике объектов Visual FoxPro, предварительно выбрав Databases в списке объектов системы.

После создания проекта и новей базы данных необходимо создать соединение с SQL-сервером. Для этого в списке объектов созданной базы данных следует выбрать Connections, после чего воспользоваться кнопкой New. Данное действие приведет к открытию диалогового окна установки параметров создаваемого соединения. Здесь в списке «Data source» следует выбрать созданный нами ранее источник DSN Соединение. Если источник не определен, то, используя кнопку New Data Source, можно вызвать утилиту настройки источников данных ODBC.

Здесь также можно автоматизировать процесс соединения, указав имя пользователя, его пароль и базу данных, к которой будет производиться подключение, в соответствующих полях Userid, Password и Database. Для проверки работоспособности созданной связи необходимо воспользоваться кнопкой Veri- fy Connections данного диалогового окна.

Существует также второй способ создания соединения - с помощью специальной строки соединения (Connecting string), в которой будут находиться все параметры, используемые при соединении. Для этого нужно в области Specify data source данного диалога выбрать опцию Connecting string, после чего изменится верхняя часть настроек да кого диалога. При этом, используя кнопку … , расположенную справа от строки соединения, необходимо с начала определить источник данных DSN, после чего определить пароль и имя пользователя. Данные действия немного напоминают подключение к SQL-серверу системы Microsoft Access. На основании проведенных настроек и будет сформирована строка соединения, которая будет использоваться для подключения к SQL-серверу для получения данных.

После создания соединения необходимо настроить на его основании удаленное представление. Для этого в списке объектов базы данных следует ыдать группу «Remote Views» после чего воспользоваться кнопкой New. Результатом выполнения этих действий будет диалоговое окно для выбора соединения, на основании которого и будет создаваться представление. В этом списке следует выбрать созданной нами соединение, после чего в представленном списке таблиц базы данных SQL-сервера указать необходимые таблицы. Для примера отобразим перечень предметов из таблицы PREDMET с фамилиями, именами и отчествами преподавателей из таблицы TEACHERS, которыми читаются данные предметы.

В представленном списке таблиц необходимо указать PREDMET и TEACHERS, подтверждая выбор кнопкой Add. Добавление этих таблиц приведет к тому, что Visual FoxPro представит диалог настройки связи между ними, причем произведет попытку самостоятельного определения, подставив поля с одинаковыми именами из разных таблиц в параметры настройки связи.

Если система некорректно определит эти параметры, то в этом диалоге в представленных списках необходимо будет выбрать соответствующие поля связи, после чего определить условие отбора значений в области «Criteria» этого диалогового окна. В нашем случае параметры связи должны удовлетворять следующему условию: PREDMET.TNUM = TEACHERS.TNUM

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

В закладке Fields представлен перечень полей имеющихся таблиц. С помощью данного диалога, используя кнопку Add, следует добавить необходимые поля из таблиц PREDMET и TEACHERS, после чего их имена отобразятся в правом списке диалога.

Особое внимание в Visual FoxPro уделяется настройке процессов обновления данных, другими словами, можно четко определить поля, обновление которых на SQL-сервере будет производиться автоматически при внесении соответствующих изменений в представлении Visual FoxPro. Для этих целей в дизайнере представлений имеется целая группа настроек, доступ к которым осуществляется с помощью выбора закладки «Update Criteria».

В начале настройки необходимо определить ключевое поле, относительно которого будет осуществляться контроль целостности. В нашем случае следует определить ключевым поле PREDMET.PNUM, установив соответствующий флажок слева от его имени в колонке . Затем можно определить поля, для которых будет производиться обновление, устанавливая для каждого из них флажок в поле Использование опции Send SQL updates определяет процедуру отправки обновлений на SQL-сервер. При этом обновление может осуществляться двумя способами: удалить запись и добавить новую (SQL DELETE then INSERT) или обновить запись (SQL UPDATE). Как видно, установки данных параметров определяют использование SQL-команд изменения данных: INSERT, DELETE и UPDATE.

В нашем случае SQL-код будет иметь следующий вид:

SELECT Predmet.PNUM, Preimet.PNAME,

Predmet.TNUM, Predmet.НOURS,

Predmet.COURS, Teachers.TFAM,

Teachers.TIMA, Teachers.TOTCH

FROM dbo.PREDMET Predmet,

dbo.TEACHERS Teachers

WHERE Teachers. TNUM = Predmet. TNUM

Задание. Организуйте обмен данными между созданной в предыдущих лабораторных работах SQL – совместимой базой данных и локальными базами данных Access и Visual FoxPro.