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

Вниз

Реляционная база данных Access + DBGRID   Найти похожие ветки 

 
linox   (2008-11-18 11:27) [0]

Добрый день! Вопрос: можно ли в 1 DBGRID добавить поля из нескольких таблиц с реляционной базы данных Access?


 
azamat ©   (2008-11-18 11:30) [1]

Да, можно.


 
Правильный$Вася   (2008-11-18 11:30) [2]

если использовать ADODataset (т.е. работать с БД через SQL-запросы, а не прямым отображением таблиц)

ps в гриде нет полей, это дырка для показа полей из датасета


 
Sergey13 ©   (2008-11-18 11:42) [3]

Вообще-то есть еще лукап-поля, но правильный совет

> [2] Правильный$Вася   (18.11.08 11:30)


 
linox   (2008-11-18 11:44) [4]

2 Правильный$Вася:
так проблема в том, что с SQL не работал вообще и не умею.


 
Sergey13 ©   (2008-11-18 11:48) [5]

> [4] linox   (18.11.08 11:44)

Учиться, учиться и еще раз учиться.
(с) В.И.Ленин


 
linox   (2008-11-18 11:53) [6]

2 Sergey13 ©  
согласен на все 100%... просто время поджимает...


 
Sergey13 ©   (2008-11-18 11:57) [7]

> [6] linox   (18.11.08 11:53)

Бог подаст.


 
linox   (2008-11-18 12:00) [8]

2 Sergey13 ©  
я атеист ))


 
sniknik ©   (2008-11-18 12:01) [9]

> просто время поджимает...
ищите готового программиста со знанием sql.


 
sniknik ©   (2008-11-18 12:02) [10]

> я атеист ))
это неважно, бог подает всем одинаково...


 
MsGuns ©   (2008-11-18 12:16) [11]

Запрос можно "нарисовать" в самом акцесе, воспользовавшись мастером, затем преобразовать его в сиквель и скопипастить в дельфишный ADODataSet.CommandText.


 
b z   (2008-11-18 12:31) [12]


> скопипастить в дельфишный
А можно там и оставить, а в "дельфишный ADODataSet.CommandText" прописать его имя.


 
MsGuns ©   (2008-11-18 12:46) [13]

Нет.
Можно без ADO-ных компонент, "требующих" сиквеля.
Но тогда для его запуска и отображения результатов надо использовать сам аксцесс через COM интерфейс, что много сложнее, да и тормознутее.
Кроме того, для работы с mdb вам потребуется сам акцес, а его на ПК клиента может и не быть.


 
Anatoly Podgoretsky ©   (2008-11-18 13:08) [14]

> linox  (18.11.2008 11:53:06)  [6]

Ничего останешься на второй год.


 
Slym ©   (2008-11-19 05:51) [15]

Anatoly Podgoretsky ©   (18.11.08 13:08) [14]
а разве не один год службы?


 
linox   (2008-11-21 11:09) [16]

я уже не учюсь давно ))
ладно... тогда по-другому...
есть 2-е таблици связаны отношением 1 к многим...
идет заполнение в delphi средствами DBEdit.
1. Код
2. ФИО
3. Номер комнаты
4. С числа
5. По число
6. Оплата за день
7. Тип номера
(поля № комнаты, Оплата, тип номера во второй таблице). Как сделать так, когда я с помощью DBLookupComboBox1 выбирал № комнаты, а заполнение полей Оплата и тип номера делалось автоматически со второй таблицы


 
MsGuns ©   (2008-11-21 11:37) [17]

1. Использовать две сетки - в одной показывать поля мастера (ФИО, комнату), в другой - поля детала (оплата, тип номера)

Связку сделать с помощью средств датасетов или выборку детала по событию AfterScroll мастера


 
Anatoly Podgoretsky ©   (2008-11-21 11:39) [18]

> linox  (21.11.2008 11:09:16)  [16]

> я уже не учюсь давно ))

Плохо, учиться нужно до самой смерти.


 
Anatoly Podgoretsky ©   (2008-11-21 11:41) [19]


> Как сделать так, когда я с помощью DBLookupComboBox1 выбирал
> № комнаты, а заполнение полей Оплата и тип номера делалось
> автоматически со второй таблицы

Это надо делать в форме и делать два запроса в отдельной транзакции.



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

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

Наверх




Память: 0.51 MB
Время: 0.011 c
2-1247921743
Igor2010
2009-07-18 16:55
2009.09.20
организовать циклы нужно


2-1248065231
lesey
2009-07-20 08:47
2009.09.20
Задать скорость в конфигурации модема


3-1227256996
abhtr
2008-11-21 11:43
2009.09.20
Можно ли уменьшить время выполнения запроса


3-1227276494
Zemen
2008-11-21 17:08
2009.09.20
Объясните тонконсти хранения чисел


2-1247750683
BorNent
2009-07-16 17:24
2009.09.20
WM_LBUTTONDOWN перед WM_SETFOCUS