Н, 3. Елманова. C++Builder 3.0, архитектура "клиент/сервер" и Internet
вер" оказываются использованными. Скорость выполнения запросов к данным, хранящимся теперь в серверной базе данных, действительно может возрасти - их будет выполнять сервер. Однако, перенося данные таким способом, мы создали на сервере только то, что было в исходной базе данных, - таблицы и индексы. Новые-объекты серверной базы данных, реализующие бизнес-правила, такие, как триггеры и хранимые процедуры, при этом созданы не будут - их придется создавать вручную, занимаясь кодированием на процедурном расширении SQL, характерном для данного сервера, либо, как и в случае настольных СУБД, описывать их внутри клиентского приложения, рискуя нарушить ссылочную целостность данных. Если мы попытаемся создать приложение, работающее с только что созданными нами таблицами, то сумеем в этом убедиться.
Для создания такого приложения воспользуемся инструментом под названием Database Form Wizard. Запустим C++Builder, создадим новый проект, удалим из него пустую форму и выберем со страницы Forms репозита-рия объект Database Form (рис. 5.7).
Рис. 5.7. Выбор Database Form из репозипшрия C++Builder
Далее выберем   создание формы master/detail с использованием объектов ТТаЫе (рис. 5.8).
86
Перенос приложений и унаследованных данных в архитектуру клиент/сервер
Рис. 5.8. Выбор типа будущей главной формы приложения
После выбора псевдонима базы данных Oracle из списка псевдонимов определим master-таблицу. В нашем случае это только что созданная таблица CLIENTS (рис. 5.9).
Ш Oracle?
Рис. 5.9. Выбор master-таблицы
87