И. 3, Елманова. C++Builder 3.0, архитектура "клиент/сервер" и Internet
ния. Аналогичные действия можно предпринять и при попытке модификации значения ключевого поля в записи таблицы CLIENTS (рис. 5.16).
New...
Relationship Editor
d
Delete
Cancel
Puc. 5.16. Определение реакции сервера на попытки нарушения ссылочной целостности
После этого можно выбрать из меню опцию Tasks/Forward Engineer/Schema Generation и после установки соединения с Oracle сгене^ рировать базу данных, установив в появившейся диалоговой панели опции для генерации структуры. Можно также просмотреть и сохранить скрипт на языке PL/SQL (это процедурное расширение SQL, используемое для написания триггеров и хранимых процедур Oracle), называемый также DDL-сценарием (DDL расшифровывается как Data Definition Language -язык определения данных, рис. 5.17).
94
Перенос приложений и унаследованных данных в архитектуру клиент/сервер
Рис.5.]7. DDL-сценарий генерации схемы базы данных
Далее можно попытаться снова воспользоваться утилитой Data Migration Wizard для переноса данных, отказываясь при этом от удаления уже сгенерированных таблиц. .Однако в ряде случаев удобнее создать при-ложение_для переноса данных из старой БД в новую. Как было отмечено выше, унаследованные данные могут не удовлетворять правилам ссылочной целостности, установленным на сервере. В этом случае от приложения, используемого для переноса данных, требуется некоторая гибкость (например, предоставление возможности редактирования исходных данных или создание дополнительных таблиц, содержащих записи, не удовлетворяющие бизнес-правилам новой базы данных, для последующего анализа).
Создадим простейшее приложение для переноса данных. Для этого спроектируем форму следующего вида (рис. 5.18).
95