Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Вниз

UpdateSQL: Insert => ID = 0 


alexandervasjuk   (2002-03-26 13:45) [0]

Толпарищи!
В связки TQuery-TUpdateSQL при вставке теряю ID (он назначается триггером). А он мне нужен (для Lokup поля другого НД например) Как бы красиво решить эту проблему?



Johnmen   (2002-03-26 15:01) [1]

Обновлять TQuery (Close,Open) - иначе никак...



Nikolay M.   (2002-03-26 15:17) [2]

Генери ID-шку хранимой процедурой, вызывай ее с клиента и при инсерте указывай ID явно: INSERT INTO MyTable (id, name) VALUES (1, "alexandervasjuk").
Мы дожили до того, что у нас одной хранимой процедурой генерились ID-шки ко всем таблицам (принимался параметр - имя таблицы и увеличивался соответствующий ей триггер).



alexandervasjuk   (2002-03-26 15:37) [3]

Похоже с BDE именно так и надо.

Для справки: Решил проблему переездом на IBX. Там есть волшебный TIBDataSet, у него есть RefreshSQL, делаю
Select
ID,
NAME
from tblNikolayM
where
NAME = :NAME

Главная фишка, что идентификация по NAME, т.е., естественно, требуется уникальность, что впрочем и имеет место.

Спасибо откликнувшимся!



s.ts   (2002-03-26 18:34) [4]

В последних IBX (5.03) изменения в БД, за которые ответственны триггеры, обновляются автоматом (впрочем, в Fib+ это и ранее было)




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.024 c
14-57878          VictorT               2002-03-12 11:48  2002.04.18  
О понятии “информация”


6-57835           serge_sss             2002-01-27 11:02  2002.04.18  
Сетевой трафик


4-57928           Alx2                  2002-02-13 11:58  2002.04.18  
Hook: что неправильно?


14-57883          Фэ                    2002-03-04 23:10  2002.04.18  
Shells


1-57768           NDelphist             2002-04-03 22:52  2002.04.18  
Interface и указатель