Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Вниз

про 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
1-22210
Man In Red
2001-12-15 20:12
2002.01.08
Как намутить такое, что бы............................


4-22471
bsFrame
2001-11-02 11:42
2002.01.08
Компонет


14-22399
McSimm
2001-11-11 12:01
2002.01.08
Форматирование в ответах


1-22125
Dimass
2001-12-19 23:34
2002.01.08
Помогите разобраться.....


1-22196
T2
2001-12-16 07:18
2002.01.08
Desktop off





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский