رفتن به مطلب
  • 0

جستجو در دیتابیس های سنگین


arastooms

سوال

سلام به همه عزیزان

((مخصوصا جناب استاد اسکندری که میدونم پُست های دیتابیس رو بدون جواب رها نمیکنه :bigsmile:))


من یک دیتابیس دارم با بیش از 100 هزار رکورد که میام با دستور زیر مقداری رو که کاربر وارد کرده در ادیت تکس میگیرم و سرچ میکنم 
معمولا تو این برنامه مقادیر زیادی به cur من اختصاص پیدا میکنه (( هر بار بیش از 5000 cur.RowCount )) دارم 

دستور سرچ من به این صورته 
 

	cur=sql.ExecQuery("SELECT * FROM table_1 WHERE name LIKE '%"&New_edit_text&"%' ")	

همونطور که میبینید به دنبال یک اسم در 10000 هزار اسم هستم و تعداد زیادی رو پیدا میکنه و به cur اختصاص میده 
حالا وقتیروی دکمه سرچ کلیک میکنه کاربر 
برنامه میره تو کمااااااا یه نیم ثانیه و بعد مقادیر رو میده به لیست ویو (( آریا لیست ویو ))

چه طور میتونم روند کارم رو سبک تر کنم ؟؟

مثلا بگم اول بیا تو 1000 تای اول بگرد اگر کار بر اسکرول کرد رسید آخر لیست بیا از 1000 تا 2000 بگرد و نمایش بده و اگر باز اسکرول کرد بیا از 2000 تا 3000 رو نشون بده 
و بریز در لیست ویو 

ممنون میشم راهنمایی بفرمایید با تشکر

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

3 پاسخ به این سوال تاکنون داده شده است

ارسال های توصیه شده

شما مثل کد زیر اطلاعات رو لود کن تا تو کما نره ، 

Sub Activity_Create(FirstTime As Boolean)
Dim task As AriaAsyncTask
task.Initialize("task")
task.Run(Array(New_edit_text))
End Sub


Sub task_DoInBackground(Params() As Object) As Object
	Return sql.ExecQuery("SELECT * FROM table_1 WHERE name LIKE '%"&Params(0)&"%' ")	
End Sub

Sub task_OnPostExecute(Result As Object)
	cur = Result
	'set adapter...
End Sub

هر تعدادی هم بود بدین به آریالیست ویو ، بدون مشکل نمایش میده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 3 ساعت قبل، امین شاهدی گفته است :

شما مثل کد زیر اطلاعات رو لود کن تا تو کما نره ، 

Sub Activity_Create(FirstTime As Boolean)
Dim task As AriaAsyncTask
task.Initialize("task")
task.Run(Array(New_edit_text))
End Sub


Sub task_DoInBackground(Params() As Object) As Object
	Return sql.ExecQuery("SELECT * FROM table_1 WHERE name LIKE '%"&Params(0)&"%' ")	
End Sub

Sub task_OnPostExecute(Result As Object)
	cur = Result
	'set adapter...
End Sub

هر تعدادی هم بود بدین به آریالیست ویو ، بدون مشکل نمایش میده

سلام امین جان سپاس از وقتی که هزینه میکنی برای راهنمایی بی دریغ دوستانی مثل من (( مبتدی )) 
با این همه مزاحمت و سوالات جور واجور

من طبق فرمان شما دستورات رو پیاده کردم و خروجی مطلوب رو گرفتم و به آریا لیست ویو منتقل کردم
ولی باید بگم که کمی هم سرعت کمتر شد و زمان گرفتن اطلاعات از دیتابیس و انتقال به آریا لیست ویو بیستر شده 
علت رو نمیدونم ولی در لوگ گاهی برای کتابخونه  

 AriaAsyncTask

 دستور log قرمز null رو برمیگردونه

AriaAsynkTask Error : null

دقیقا بعد از زدن دکمه سرچ این خطا رو نشون میده و بعد از یک ثانه مطالب در آریا لیست ویو نمایش داه میشه

ممنون میشم وقت داشتید راهنمایی بفرمایید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...