PDA

View Full Version : جستجوی ترکیبی در بانک sql



unique1984
سه شنبه 23 مهر 1387, 19:24 عصر
سلام.
من توسط کدهای زیر قصد انجام جستجوی ترکیبی رو دارم ، مشکل من اینه : فقط در صورتیکه تمام Edit ها رو پر کرده باشم این جستجو جواب می ده ، در حالیکه همیشه همه ادیت ها پر نمی شه و در این حالت (زمانیکه همه ادیت ها پر نمیشه) تمام رکوردهای جدول رو نشون میده.
چنین روش و کدی رو در #c اجرا کردم. اما نمیدونم مشکلش در دلفی چیه؟؟؟


procedure TFrmChequeInfo.BSearchClick(Sender: TObject);
var Number,owner,ChequeDate,WhereStr:string;
begin
WhereStr:='';
if EdNumberSrch.Text='' then Number:='Number is Null or Number is Not Null '
else
Number:='Number like'+QuotedStr('%'+EdNumberSrch.text+'%');

if EdOwner.Text='' then owner:='Gname is Null or Gname is Not Null '
else
owner:='Gname like'+QuotedStr('%'+EdOwner.text+'%');

if EdDate.Text='' then ChequeDate:='ChequeDate is Null or ChequeDate is Not Null '
else
ChequeDate:='ChequeDate like'+QuotedStr('%'+EdDate.text+'%');

WhereStr:=Number+' AND '+owner+' AND '+ChequeDate;

with DmTables.QryCheque do
Begin
Close;
SQL.Text:='select * from TblCheque where '+ WhereStr;
Open;
end;
end;

unique1984
سه شنبه 23 مهر 1387, 21:19 عصر
مشکلشو پیدا کردم.
تاپیکو حذف نمیکنم چون ممکنه مشکل یه نفر دیگه هم باشه و از این طریق کمکی بهش بشه.
و اما مشکل...
فقط چند تا پرانتز ناقابل توی خطوطی نظیر این کم داشت.

if EdNumberSrch.Text='' then Number:='(Number is Null or Number is Not Null) '

SYNDROME
چهارشنبه 24 مهر 1387, 06:51 صبح
به لینک زیر نگاه کنید.
http://barnamenevis.org/forum/showthread.php?t=124774&highlight=Edit
موفق باشید.