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




Вниз

ADO -> Access 2000 ???? 


koks   (2002-04-04 12:30) [0]

Уважаемые знатоки - необходима теоретическая консультация...
Суть проблемы:
Работая в Access (без Delphi) я добавлял к набору данных вычисляемые поля след. образом:

ALTER TABLE MyTable ADD COLUMN NewColumn INTEGER;

Затем в модуле создавал функцию MyFunc и выполнял запрос:

UPDATE MyTable SET NewColumn = MyFunc(F1, F2);

Где F1, F2 - поля MyTable

Все работало быстро и замечательно.

Теперь я на Delphi и подключаюсь к Access через ADO.
Каким образом мне реализовать то-же самое с учетом, что MyFunc - функция на Паскале, а не в модуле Access - а.



sniknik   (2002-04-04 13:59) [1]

создать вычисляемое поле - клик правой кнопкой мыши на ADOtable, ADODataSet, ADOQuery пункт меню сверху Field Editor - открывается окошечко в нем клик правой кнопкой мыши пункт меню сначала сделай Add all fields (потом убереш что не нужно) далее New Field там поставиш Calculated и описывай функцию.



sniknik   (2002-04-04 14:22) [2]

сорру забылся немного, функцию описывай в событии onCalcFields у
ADOtable,.. .(раз начал подробно то до конца надо)



koks   (2002-04-04 17:07) [3]

Спасибо, но немного не в кассу...
Это получится объект поля.
А мне нужно именно поле таблицы (Access - таблицы), которое в будущем будет использоваться в SELECT - конструкциях.



sniknik   (2002-04-04 18:48) [4]

а как в "кассу" наверно не получится. я бы тоже не прочь узнать как можно Delphi к Access-у присобачить.
(ведь это по сути паскалевская функция будет Access-ом выполнятся или драйверами если из другого места этот SELECT вызвать а он Бейсик любит а с Паскалем дружить не хочет :-)



Delirium   (2002-04-04 19:54) [5]

Я думаю так-же как и везде, где в принципе можно использовать пользовательские функции среди SQL инструкций: написать соотвестствующую dll и включить её в собственную функцию.



sniknik   (2002-04-05 08:54) [6]

dll написать не проблема. включить туда свою функцию тоже но как заставить ее вызываться в Access-е? вот это проблема и для её решения надо как минимум прочитать инструкцию :-) чтобы было не в "принципе". Короче трудов много а стоит ли? или можно обойтись тем что есть?




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




Наверх





Память: 0.72 MB
Время: 0.037 c
1-80848           Ник                   2002-04-12 22:00  2002.04.25  
Не могу разобраться


1-80935           Sniffer               2002-04-11 17:36  2002.04.25  
Народ хелп плз


3-80815           Jony                  2002-04-04 17:20  2002.04.25  
Некорректная работа DBNavigator.


14-81062          FELLINI               2002-03-20 07:24  2002.04.25  
Заблокировать программу


3-80766           merr                  2002-04-04 12:55  2002.04.25  
paradox-базы в Delphi