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

Вниз

CLientDataSet+SELECT 2 таблиц   Найти похожие ветки 

 
LinOS ©   (2003-10-02 11:18) [0]

Имеется БД. В ней таблицы A и B. SQLDataSet - Provider - ClientDataSet - DataSource- DBGrid.
таблицы

А B
-------- ----------
|id | |id |
|bid | |name |
|pid | |--------|
|amount|
--------
В ClientDataSet пишу:
ClientDataSet.CommandText="SELECT A.id, B.name, A.amount FROM A,B WHERE A.bid = B.id AND pid = 2";
ClientDataSet.Open

ВСе открывается показывает. Теперь хочу делать изменения.
Вставить name c id в DBGrid
И при ClientDataSet.ApplyUpdates(-1); Что бы записывалась B.id в A.bid.
Возможно такое.
Посоветуйте, как грамотнее осуществить.


 
Nikolay M. ©   (2003-10-02 11:34) [1]

Provider.ResolveToDataSet := True & Provider.BeforeUpdateRecord?
Попутно вопрос - как получается ID?


 
LinOS ©   (2003-10-02 11:45) [2]

С id все нормально - autoincrement.


 
Nikolay M. ©   (2003-10-02 11:51) [3]


> С id все нормально - autoincrement.

Это как раз НЕнормально (если автоинкремент происходит на уровне БД).
Каким образом ты будешь узнавать его значение из главной таблицы, чтобы потом вставлять его в подчиненную?
http://rsdn.ru/article/db/midas_migration.xml#XSLTSECTION124143120120


 
LinOS ©   (2003-10-02 11:57) [4]

В подчиненную таблицу ничего не вставляю - только беру информацию для вставки (id) и отображения (name).
Спасибо. А небольшой привер можно для полного понимания. А именно как сформировать SQL в Provider.BeforeUpdateRecord если одна строка добавлена, одна изменена, другая удалена?


 
LinOS ©   (2003-10-02 12:16) [5]

Все Николай, спасибо огромное.
Главное навести на правильный путь.



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
3-73971
Dark Elf
2003-10-01 14:47
2003.10.23
количество столбцов в DBGrid


6-74357
Веньтель
2003-08-25 22:54
2003.10.23
Программно запретить доступ к сетке некоторых машин


3-74004
alex25
2003-09-30 17:24
2003.10.23
Функция текущей даты


1-74258
Lam
2003-10-13 10:08
2003.10.23
ini файл


6-74356
scruff
2003-08-23 20:01
2003.10.23
Голосовой чат для лок сети