Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.11;
Скачать: CL | DM;

Вниз

Клиент-серверная работа с Interbase   Найти похожие ветки 

 
negrila   (2004-06-16 14:21) [0]

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

Таблица Authors
ID  - уникальный идентификатор писателя или группы
ID2 - ссылка на идентификатор группы писателей (Authors.ID), если 0 - писатель не включен ни в одну группу. У группы всегда равна 0.
Name - наименование группы либо имя писателя.
CITY_ID - ссылка на город, где живет писатель (CITIES.ID)
STATUS_ID - ссылка на статус писателя (STATUSES.ID)

Таблица STATUSES
ID - уникальный идентификатор статуса писателя
STATUS - описание статуса: новичок, бывалый, мастер

Таблица CITIES
ID - уникальный идентификатор города
CITY_NAME - название города.

Пример таблиц

STATUSES
ID STATUS
1 новичок
2 бывалый
3 мастер

CITIES
ID CITY_NAME
1 Киев
2 Москва
3 Санкт-Петербург
4 Лондон

AUTHORS
ID ID2 Name  CITY_ID STATUS_ID
1 0 Украинские 0 0
2 1 Голыцько 1 1
3 0 Российские 0 0
4 1 Олексенко 1 2
5 0 Смитт-Уайлд 4 1
6 3 Аркадьев 3 1

Как мне пользуясь компонентами со вкладки Interbase заставить программу  показывать и изменять данные о писателях в виде,
понятном пользователю, т.е. при изменении, добавлении и т.п не мучать его с вводом ID2, CITY_ID и STATUS_ID, которые он не обязан запоминать, а сделать комбобокс или DBEhLibGrid, чтобы он выбирал понятные ему
Киев, Санкт-Петербург, статус из комбобокса Новичок, Бывлаый и т.д.? Ведь в клиент-серверном мне все это нужно описать в InsertSQL, Select SQL(ну это-то понятно каак делать), ModifySQL  и т.п.


 
Соловьев ©   (2004-06-16 14:23) [1]


> клиент-сервером у меня полная неразбериха

http://ibase.ru/develop.htm


 
Digitman ©   (2004-06-16 17:12) [2]


> Ведь в клиент-серверном мне все это нужно описать в InsertSQL,
> Select SQL(ну это-то понятно каак делать), ModifySQL  


с обычными наследниками класса TDataSet(TTable, TQuery и т.п.) умеешь работать ?

наследники класса TDataSet (TIBTable, TIBQuery, TIBDataSet и пр.) по логике управления ничем не отличаются от вышеупомянутых, но перед использованием для работы с открываемым набором данных (НД) требуют так или иначе указания текстов соответствующих запросов:

- чтобы НД можно было просматривать перемещаясь по записям (TDataSet-методы Open, First, Next, Prior и т.п.), требуется указание текста SELECT-запроса;

- чтобы можно было вставить запись в НД (методы Insert, Append), требуется указание текста INSERT-запроса;

- чтобы тек.запись НД можно было удалять (метод Delete), требуется указание текста DELETE-запроса;

- чтобы можно было модифицировать тек.запись в НД (метод Edit), требуется указание текста UPDATE-запроса;


 
negrila   (2004-06-16 21:28) [3]

Спасибо за советы. Но что и как нужно втсавлять я не раз читал в инете, я просто не представляю себе таких запросов( кроме Select), чтобы пользователю указывать вместо различных ID то, на что эти ID ссылаются. С Select все через JOIN ON AUTHORS.STATUS_ID=STATUSES.ID, но как дать пользователю возможность редактировать данные такого запроса? То есть из комбобокса выбирать города, а не ручками вставлять ID.
Нужно не с IBDataSet, а с IBQuery и IBUpdateSQL работать? А в инете примеры есть понятные?



Страницы: 1 вся ветка

Текущий архив: 2004.07.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
1-1088344355
dido
2004-06-27 17:52
2004.07.11
Почему форма приобретает вид 98 Винды?


14-1087853882
Marser
2004-06-22 01:38
2004.07.11
Сегодня 22-е июня


3-1086713832
agent007
2004-06-08 20:57
2004.07.11
Доступ к базам сервера Informix из приложения


1-1088508750
Ш-К
2004-06-29 15:32
2004.07.11
Корень XML документа


3-1086887593
ceval
2004-06-10 21:13
2004.07.11
Подскажите как вывести в DBGrid следующие: