|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
БД на MS Access + ADO
Разрабатываю прогу выдачи одежды, это мой первый подобный проект, весь мозг сломал, не догоняю как сделать некоторые моменты:
1. на форме fLich есть JvDBGrid, в который читается таблица LichData, в поле "отдел" которой надо подставить значения из другой таблицы Podraz вместо содержащегося в нём ключа 2. на той же форме не получается в столбце "пол" выводить не галочки а "муж/жен" 3. на форме fMain есть ADOQuery2, в котором есть объединённый через UNION запрос к двум таблицам, реально ли его сделать таким образом, чтобы сначала выводились строки из 1-й таблицы а потом из 2-й? Вот на этих 3-х вопросах застрял Вот проект: http://narod.ru/disk/5385603001/DB-access.rar.html Последний раз редактировалось IPOMAH, 11.02.2011 в 06:34. |
#2
|
|||
|
|||
3) реально, ввести поле признак, как пример:
Код:
select pole1, poleN, 1 as priznak from Table1 union select pole1, poleN, 2 as priznak from Table2 order by priznak |
#3
|
|||
|
|||
так то прокатило, но нужно чтобы порядок вывода был именно таким как в таблицах: таб1_id1, таб1_id2, таб1_id3..... таб2_id1, таб2_id2.....
с 3) всё в порядке! была сортировка по наименованию, спасибо Asinkrit! подкинул идейку, просто в поле priznak прибавил поле ID Последний раз редактировалось IPOMAH, 10.02.2011 в 22:19. |
#4
|
|||
|
|||
1) Если тебе только для вывода, то соответсвенно пишешь запрос:
Код:
SELECT S.*, P.otdel FROM SIZ S LEFT JOIN Podrazd P ON S.otdel_id = P.id ... Если надо выбирать, то надо делать Lookup - отдельный источник данных, который загружает подчиненую таблицу, а дальше надо смотреть как это реализовано в JvDBGrid. Я им не пользуюсь (сижу на DevExpress), так что тут подсказать не смогу. 2) Код:
SELECT S.*, CASE S. WHEN S.sex=0 THEN 'муж' WHEN S.sex=1 THEN 'жен' ELSE 'гермофродит?' END as GENDER FROM SIZ S ... И опять же в гриде просто выводишь новое поле GENDER. |
#5
|
|||
|
|||
lmikle
это наверно в случае TADOQuery? а у меня там TADOTable, в форме редактируется таблица LichData... вот вобщем проиллюстрировал всю загвоздку пол пытался через DisplayValues = 'муж;жен' (через Object Inspector а не в коде), но почему то не прокатывает отдел в ADOTable тоже пытался через LookupDataSet, и с остальными вытекающими... тоже нуль эффекта там в проекте всё так и настроено, но не фунциклирует, мож я не все свойства указал? ------- пол, как оказалось из-за особенностей JvDBGrid не отображался, заменил на dxDBGrid ------- я уже хз чё делать... теперь уже и dxDBGrid не отображает пол муж/жен, хотя оригинальный DBGrid отображает нормально, но у DBGrid много недостатков, в числе которых - отсутствие автоматического выравнивания столбцов ADOQuery неудобно использовать, т.к. у меня изменения/добавление записей вносятся именно в ADOTable Последний раз редактировалось IPOMAH, 18.02.2011 в 20:45. |
#6
|
|||
|
|||
Ребят! Ещё один вопрос: как можно перемещать Recordset в пределах ADOTable?
Т.е. например если запись переместить на строчку вниз - то назначить индекс следующей записи к перемещаемой, а индекс перемещаемой - к следующей... Или это как то по другому делается? При попытке манипуляций с индексами дельфя матерится, мол не трожь индексы - это святое 8-) Последний раз редактировалось IPOMAH, 09.03.2011 в 21:56. |