PDA

View Full Version : سوال: نحوه استفاده از یک Function خاص در دستور SQL



mehdi_moosavi
سه شنبه 18 اردیبهشت 1386, 11:34 صبح
سلام
من میخوام در محیط دلفی یک Function تعریف کنم (مثلا بنام MyFunc)و در دستور SQL مربوط به یک Adoquery از این فانکشن استفاده کنم؟ آیا امکانپذیر هست؟
مثلا:


select f1,myFunc(f1) from tbl1 where ...

لطفا راهنمایی کنید. باتشکر

حمیدرضاصادقیان
سه شنبه 18 اردیبهشت 1386, 12:06 عصر
بله دقیقا.
مثلاً


adoquery1.sql.add('select f1,+'myfunc(f1)+' from tbl1 where...');

ولی نمیتونی در داخل فانکشنت از فیلد f1 استفاده کنی. (البته من اینجوری فکر میکنم.)

ب- تات
سه شنبه 18 اردیبهشت 1386, 12:10 عصر
MyFunct()

باید String برگردونه

ب- تات
سه شنبه 18 اردیبهشت 1386, 12:10 عصر
var Str : string;
begin
Str := 'select '+f1+','+myFunc(f1)+' from tbl1 where ...';
dataset.sql.clear;
dataset.sql.add(str);
end;

SYNDROME
سه شنبه 18 اردیبهشت 1386, 20:02 عصر
با سلام
چرا در محیط SQLServer ایجاد نمی کنی؟

mzjahromi
سه شنبه 18 اردیبهشت 1386, 20:08 عصر
سلام
من میخوام در محیط دلفی یک Function تعریف کنم (مثلا بنام MyFunc)و در دستور SQL مربوط به یک Adoquery از این فانکشن استفاده کنم؟ آیا امکانپذیر هست؟
مثلا:


select f1,myFunc(f1) from tbl1 where ...

لطفا راهنمایی کنید. باتشکر

تابع رو تو دلفی تعریف کنی و با AdoQuery ازش استفاده کنی؟؟؟
اگر اینطوری بود که خیلی عالی میشد ولی همچین کاری نمیشه
اگر بانکتون MSSQL باشه باید تو خود SQL Server تعریفش کنی
یا اینکه از فیلد های محاسباتی استفاده کنی