ورود

View Full Version : سوال: اجرا نشدن کوئری



_abiriamir
دوشنبه 18 خرداد 1388, 12:17 عصر
دوستان عزیز سلام
من قطعه کد زیر را نوشته ام اما عمل نمیکند.
لطفا راهنمایی ام کنید.



procedure TTommorow.FormCreate(Sender: TObject);
var tomorrow_var: string;
begin
//adoquery1.Close;
tomorrow_var:=datetostr(Now+1);
adoquery1.Sql.Clear;
adoquery1.SQL.Add('Select*from table1 where miladi=:'+tomorrow_var);
adoquery1.open;
end;

سعید صابری
دوشنبه 18 خرداد 1388, 12:58 عصر
فكر كنم اگه از اينطوري استفاده كني بهتر باشد



.....+QuotedStr(tomorrow_var)

Saeed_m_Farid
دوشنبه 18 خرداد 1388, 15:22 عصر
سلام
نمیدونم موقع paste کردن کدتون کلمه های SQL به هم چسبیدن یا همینطوری دارید استفاده میکنین! اگه حالت دومه که بین کلمات query فاصله بدین.

در ضمن :


نیازی به استفاده از ":" نیست، شما که از پارامتر استفاده نمیکنید.
Now + 1 = Tomorrow
با اجازتون من کدتون رو اصلاح کردم یه امتحانی بکنید ...
procedure TTommorow.FormCreate(Sender: TObject);
begin
with adoquery1 do begin
if Active then Close;
SQL.Text := 'Select * From Table1 where miladi = ' + DateToStr(Tomorrow);
Open;
end;
end;


موفق باشید.

_abiriamir
سه شنبه 19 خرداد 1388, 16:33 عصر
بازم عمل نمیکنه :گریه:

Saeed_m_Farid
سه شنبه 19 خرداد 1388, 17:29 عصر
بازم عمل نمیکنه :گریه:
یعنی چی عمل نمیکنه، کامپایل میشه پروژتون؟ کد زیر رو جایگزین کنید و اگه Exception افتاد، بگید Error دقیقاً چیه؟ شاید ADOConnection تون مورد داره یا فیلد miladi نداری و ...

begin
with adoquery1 do try
if Active then Close;
SQL.Text := 'Select * From Table1 where miladi = ' + DateToStr(Tomorrow);
Open;
except on exp: Exception do
ShowMessage(exp.Message);
end;
end;


شما نتیجه adoquery1رو کجا نمایش میدین؟
اگه بدون اشکال اجرا شد ولی نتیجه ای بر نمیگردونه، احتمال داره فرمت ذخیره شده تاریخ شما، درست نباشه. یعنی مثلاً اینطوری June 25 2009 یا ...
فرمت رو چک کنید، واسه فرمت بنذی تاریخ هم میتونید از FormatDate استفاده کنید ...

_abiriamir
چهارشنبه 20 خرداد 1388, 17:27 عصر
با سلام وعرض خسته نباشید
دست شما درد نکنه ولی مشکلم حل شد البته نه با دیتابیس و راه های ارائه شده
راهم هم باند برای این که اصلا ربطی به دیتابیس ندارد و اصلا کار مشکلی نیست

و اما این مشکل که حل شد اما بد نیست که ببینیم واقعا مشکلش از کجا بوده

اول از شما دوستان عزیز تشکر میکنم
دوم اینکه برنامه اروری نمیده
فقط نتیجه نمیده یعنی تو dbgrid چیزی نمیاد
در ضمن فکر نمیکنم که فرمت تاریخم مشکل داشته باشه

بحث سر تاریخ شد بذارین یه سوال دیگه هم بپرسم

در دستابیس من برای وارد کردن تاریخ 1388/1/2 باید ابتدا 88 را وارد کنبم، بعد 1 و سپس 2 و این یکم برای مشتری یا هرکس دیگه سخته.
چکارش کنم؟

narsic
یک شنبه 24 خرداد 1388, 20:45 عصر
با سلام وعرض خسته نباشید
دست شما درد نکنه ولی مشکلم حل شد البته نه با دیتابیس و راه های ارائه شده
راهم هم باند برای این که اصلا ربطی به دیتابیس ندارد و اصلا کار مشکلی نیست

و اما این مشکل که حل شد اما بد نیست که ببینیم واقعا مشکلش از کجا بوده

اول از شما دوستان عزیز تشکر میکنم
دوم اینکه برنامه اروری نمیده
فقط نتیجه نمیده یعنی تو dbgrid چیزی نمیاد
در ضمن فکر نمیکنم که فرمت تاریخم مشکل داشته باشه

بحث سر تاریخ شد بذارین یه سوال دیگه هم بپرسم

در دستابیس من برای وارد کردن تاریخ 1388/1/2 باید ابتدا 88 را وارد کنبم، بعد 1 و سپس 2 و این یکم برای مشتری یا هرکس دیگه سخته.
چکارش کنم؟
با سلام
دوست عزیز من این dll را پیشنهاد میکنم یکی از بچه های همین سایت زحمتش رو کشیدن لینک تاپیک رو پیدا نکردم .
برای سوآل اولتون هم آیا از data access ها استفاده کرده اید و تمام ارتباط ها را نیز برقرار کرده ایید .
موفق باشید
ضمیمه شد

_abiriamir
دوشنبه 25 خرداد 1388, 12:36 عصر
این dll ها برای چه کاری هستند؟