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

Вниз

про SQL   Найти похожие ветки 

 
SklifF   (2001-12-05 11:32) [0]

Можноли в SQL использовать функции написанные в делфях, т.е.
к примеру
function(..)
begin
end;

sql.add("select function (...) as .. from...")


 
Nest ©   (2001-12-05 11:34) [1]

Мягко говоря- НЕТ!


 
SklifF   (2001-12-05 11:57) [2]

begin
sql.clear;
sql.add("select (sum(Tel."Hour")*3600 + sum(Tel."Min")*60 + sum(Sec)) as sec_time from "Tel.db" Tel ");
sql.add("where Tel.Telephon Like "8%" and Tel.Nomber="+#39+ComboBox1.Items[ComboBox1.ItemIndex]+#39);
Open;
ComboBox1.SetFocus;
end;
а как тогда в этод код вставить функцию деления на целое..т.е. mod(x,y)


 
Ghost ©   (2001-12-05 11:59) [3]

Почему нет? оформляешь функцию в виде dll, подцепляешь к SQL-серверу в виде UDF и юзай на здоровье, где и как хочешь.
Напрямую же из Delphi естественно функцию никто, кроме твоей проги не знает и не видит, т.е. каким образом SQL-сервер узнает о ее существовании?


 
SklifF   (2001-12-05 12:22) [4]

а что с последним моим вопросом?


 
Val ©   (2001-12-05 13:14) [5]

>SklifF (05.12.01 12:22)
Вы ответы читаете на свои вопросы? По-моему эта ветка практически повторяет вашу предыдущую.


 
strahov   (2001-12-05 15:16) [6]

Для InterBase сервера фмрмы Боман - можно см. <Ghost>. Необходимо знать о совместимости параметров. Полученную .dll помещаешь BIN Дельфы или в патче оси. Каждая ф-ция определяется оператором declare external function.
Пример:
function f1(par:integer):integer;cdecl;export
begin
...
end;
...
exports f1;

на стороне сервера

declare external function MeFunc integer
returns integer by value
entry_point "f1"
module_name "myudf.dll"

Успехов


 
Dick ©   (2001-12-05 21:43) [7]

Если это не аггрегатная ф-ция, то можно использовать вычисляемые поля.


 
Dick Gonsales   (2001-12-06 07:18) [8]

Вариант 1
Если твой SQL сервер не держит mod(), then
1. Создать на нем StoreProc которая возвращет курсор
fetch cursor
a=x/y
a - урезаешь(не округляешь) дробную часть
x-a= дает тебе остаток целочисленного деления x на y.
next

Вариант 2
В Delphi в DBGird вешаешь вычисляемое поле по
выше приведенному алгоритму.




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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
14-22320
Alexandr
2001-11-14 14:13
2002.01.08
Wow


1-22223
ANDREY196
2001-12-16 19:30
2002.01.08
Как создать ANI курсор Живой указатель


6-22291
Leviathan
2001-10-09 22:02
2002.01.08
Вопрос по компоненту NMFTP


1-22101
DenKop
2001-12-18 14:38
2002.01.08
Создание Help ов


1-22115
DerZky
2001-12-19 18:14
2002.01.08
Как сравнить даты и разницу между ними получить Integer