PDA

View Full Version : جستجو



مجتبی جوادی
جمعه 24 اسفند 1386, 00:47 صبح
دوستان سلام
آیا از Like و Locate بطور ترکیبی برای جستجو می توان استفاده کرد ؟
یعنی مقدار جستجو را با Like مشخص کنیم.
با تشکر

حمیدرضاصادقیان
جمعه 24 اسفند 1386, 01:13 صبح
سلام.فکر نمیکنم.ولی شما میتونی از خود دستورات sql استفاده کنی.هم سرعت برنامه ات میره بالاتر هم حجم داده هایی که در طرف کلاینت لود میکنی کمتر میشه.

babak_delphi
جمعه 24 اسفند 1386, 01:38 صبح
locate مگه داده ها رو دوباره load میکنه؟؟؟

dkhatibi
جمعه 24 اسفند 1386, 06:20 صبح
شدنش می شه!
کوئری جدید را دستور Locate روش اجرا کنید.
مشکل چیه؟

SYNDROME
جمعه 24 اسفند 1386, 08:07 صبح
دستور Locate داده های داخل DataSet را جستجو می کند و اگر رکورد جدید اضافه شود تا زمانی DataSet شما Refresh بشود وارد DataSet نمی شود.
اگر شما می خواهید داده های جدید وارد عمل جستجو شود مستقیماً از دستورات SQLاستفاده کنید.
البته می توانید Close و Open را انجام داده و سپس Locate کنید.
موفق باشید

hr110
جمعه 24 اسفند 1386, 09:23 صبح
دستور like در کوئری استفاده شده و مستقیماً با بانک اطلاعاتی کار میکنید ولی همانطور که در پست 5 توضیح داده شد locate بروی دیتاست، بنابراین با ترتیب like و سپس locate میتوانید هر دو را استفاده کنید.
توصیه میکنم که اگر قرار است یکبار از locate استفاده کنید دستورات را در کوئری قرار دهید تا سرعت برنامه کاهش پیدا نکند. ضمناً علاوه بر این دو دستور میتوانید از filter نیز در کنار آنها استفاده کنید، البته با این تفاوت که فیلتر کاری شبیه به locate انجام میدهد ولی مزیت آن نسبت به like میتواند این باشد که با فیلتر بدون مراجعه به بانک اطلاعاتی و فچ کردن رکوردها میتوانید چندین بار عمل فیلترینگ را انجام دهید.

مجتبی جوادی
شنبه 25 اسفند 1386, 23:02 عصر
دوستان سلام
ممنون از لطفتان . من از دستور Sql به همراه Like هم استفاده کرده ام ولی یک مشکل دارد و آن اینکه وقتی در حال تایپ در تکست باکس هستیم ، بطور اتوماتیک کلماتی را که شبیه کلمه یا لغت تایپ شده است را در بانک فیلتر می کند یعنی فقط آن کلمات در بانک نمایش داده می شوند ولی من میخواهم که شبیه دستور Sql استفاده کنم و جستجو شبیه locate انجام شود یعنی فقط آن رکورد تایپ شده انتخاب گردد و دیگر رکوردها هم در جدول وجود داشته باشد .
امیدوارم منظورم را رسانده باشم
با تشکر

مجتبی جوادی
شنبه 25 اسفند 1386, 23:08 عصر
دستان ببخشید فراموش کردم
یک مطلب دیگر اینکه آیا کامپوننت یا دستوری وجود دارد که کامبوباکس در دلفی را شبیه کامبوباکس در اکسس کرد . یعنی وقتی حروف در حال تایپ شدن هستند لغاتی که داری حروف مورد نظر هستند انتخاب و بقیه حروف کلمه بصورت های لایت شده باشد تا اینکه لغت مورد نظر یافت شود ؟
با تشکر

babak_delphi
شنبه 25 اسفند 1386, 23:21 عصر
اول باید داده ها رو در ComboBox لود کنی
Style رو برابر csSimple قرار بده
میتونی بعدش Combobox رو به شکل Edit دربیاری.

SYNDROME
یک شنبه 26 اسفند 1386, 07:44 صبح
فقط یک اشکال دارد و آن این است که اگر تعداد رکوردها زیاد باشد مدت زمان باز شدن برنامه طولانی می شود.
موفق باشید