ورود

View Full Version : سوال: جستجو در چند رکورد که کلمات متشابهی در یک رکورد باشد



yosefyosef
یک شنبه 27 اردیبهشت 1388, 14:01 عصر
من یک کتاب در یک تیبل اکسس درست کردم وهر صفحه از کتاب داخل یک رکورد گذاشتم ومی خواهم دو boton كه اولي جستجو بعد ودومی جستجو در قبل انجام دهد لطفا راهنمایی کنید

shahrokhkian
یک شنبه 27 اردیبهشت 1388, 17:08 عصر
من در نظر می گیرم که کلید اصلی این جدول شماره صفحه کتاب است. ابتدا صفحه ای که در آن هستیم را در متغیر I ذخیره میکنم. فرض میکنیم می خواهید کلمه "دلفی" جستجو کنید.نام فیلدی که متن کتاب را در آن ذخیره کرده اید را Matn و نام فیلد شماره صفحه را Page_Number فرض میکنم. برای کلید اول اینگونه مینویسیم.

Query1.Close;
Query1.Sql.Clear;
Query1.SQL.Append('Select * From Book Where Page_Number<='+InttoStr(I)+ And Matn Like "%دلفی%"');
Query1.Open;وبرای کلید دوم به این صورت:

Query2.Close;
Query2.Sql.Clear;
Query2.SQL.Append('Select * From Book Where Page_Number>='+InttoStr(I)+ And Matn Like "%دلفی%"');
Query2.Open;
موفق باشید.

yosefyosef
شنبه 02 خرداد 1388, 14:32 عصر
با تشکر فراوان
دوست عزیر مقصود شما از (ابتدا صفحه ای که در آن هستیم را در متغیر I ذخیره میکنم) چیست من (I) را entger معرفي كردم و مثلا

var
I integer
began
i := 5
Query1.Close;
Query1.Sql.Clear;
Query1.SQL.Append('Select * From Book Where Page_Number<='+InttoStr(I)+ And Matn Like "%دلفی%"');
Query1.Open;
واشكال روي And می گرفت


دوست عزیر ایا می توان اگر برای هر کتابی یک تیبل باشد می توان این چستجو انجام داد یا خیر مثلا مثلا کتاب اول بنام b1 وكتاب دوم b2 كه در انها فيلدي بنام Matn که در هر رکورد ان متن یک صفحه گذاشتم
با تشکر

shahrokhkian
شنبه 02 خرداد 1388, 16:16 عصر
شما گفتید " می خواهم دو Button كه اولي جستجو بعد ودومی جستجو در قبل انجام دهد "
یعنی اینکه اگر در حال حاضر بر روی رکورد شماره 100 هستید و روی Button1 کلیک کردید باید از رکورد شماره 100 تا آخر را جستجو کند و اگر برروی Button2 کلیک کردید از رکورد شماره 1 تا 100 را.
حالا برای Button1 به شکل زیر کد مینویسیم.(به فرض اینکه Table1 به جدول Book وصل باشد.)

I:=Table1Page_Number.AsInteger;کد بالا شماره صفحه ای که در آن هستید را در متغیر I ذخیره میکند.
حالا برای جستجو کد زیر را می نویسیم.


Query2.Close;
Query2.Sql.Clear;
Query2.SQL.Append('Select * From Book Where Page_Number>='+InttoStr(I)+
' And Matn Like "%دلفی%"');
Query2.Open;
حالا حتماً جستجو انجام می شود. در کد قبلی یک کوتیشن قبل از And را در تایپ جا انداخته بودم. ببخشید.

موفق باشید.