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

جستوجو در دیتابیس


ali1221

سوال

باسلام

من یک اپلیکیشن دارم میسازم که کاربر بتونه تو دیتابیسش جست و جو کنه

من تو جستوجوی سطون هایی که عدد دارن مشکلی ندارم ولی تو قسمتی که حروف انگلیسی هست مشکل دارم

من برای جسوجوی اعداد و حروف انگلیسی از کد های زیر استفاده میکنم

		If Spinner1.SelectedItem="ad" Then
	cur1= sql1.ExecQuery("SELECT * FROM tan  where adad="&EditText1.Text&" ")
	For i=0 To cur1.RowCount-1
	cur1.Position=i

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

به نظر شما مشکل کجاست؟

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

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

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

در 23 ساعت قبل، Farzad Musavi گفته است :

مطمعنی بخاطر این کده؟

اینم تغییر بده تست کن ولی بنظرم مشکلت از جای دیگش

 


cur1= sql1.ExecQuery("SELECT * FROM tan  where adad ='" & EditText1.Text & "'")

 

ممنون از پاسخ گویی

این کد هم کار نکرد

من این از کدی که گذاشتم برای جستوجو تو اعداد استفاده کردم درست کار میکنه اما برای حروف کار نمیکنه.

بقیه کد ها هم درسته درسته

امکان داره مشکل از دیتابیس باشه؟

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

در 3 ساعت قبل، ali1221 گفته است :

ممنون از پاسخ گویی

این کد هم کار نکرد

من این از کدی که گذاشتم برای جستوجو تو اعداد استفاده کردم درست کار میکنه اما برای حروف کار نمیکنه.

بقیه کد ها هم درسته درسته

امکان داره مشکل از دیتابیس باشه؟

type رو برای adad چی زدی؟

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

علت توقف برنامتون که مشخصه

اونم اینه که مقداری رو برنمی گردونه و شما با این وجود از متغیر Cur1 برای گرفتن مقدار برگشتی استفاده می کنید.

برای پیشگیری حتما باید با try یا if از بروز خطا جلوگیری کنید. البته نه این کدها رو فقط :

در در 1395/09/09, 15:08:01، ali1221 گفته است :

		If Spinner1.SelectedItem="ad" Then
	cur1= sql1.ExecQuery("SELECT * FROM tan  where adad="&EditText1.Text&" ")
	For i=0 To cur1.RowCount-1
	cur1.Position=i

 

بلکه تا جایی که از متغیر cur1 استفاده می کنید.

نکته دوم اینه که بهتره نام ستون با محتواش هماهنگ باشه مثلا ستون adad به نظر میاد که محتواش عدد باشه تا متن

این جور نام گذاری باعث سردرگمی خودتون میشه

نکته سوم هم که بالا گفتن حتما قبل و بعد متنی که وارد کد sql می برید از کوتیشن استفاده کنید.مثل کد زیر

در در 1395/09/10, 15:43:20، Farzad Musavi گفته است :

 


cur1= sql1.ExecQuery("SELECT * FROM tan  where adad ='" & EditText1.Text & "'")

 

به هر حال شمایه نمونه از دیتابیست بفرست تا کد نمونه اش رو بفرستم.

«موفق باشید.»

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

سلام

کدتون اصلا مشکلی نداره

همین تیکه کد رو توی Try Catch قرار بدید 

Try
	cur1= sql1.ExecQuery("SELECT * FROM tan  where adad="&EditText1.Text&"")
	For i=0 To cur1.RowCount-1
	cur1.Position=i
	Next
	Catch
		ToastMessageShow(LastException,True)
	End Try

ببینید توی Catch هنگام خطا چه چیزی رو toast میکنه ؟

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

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

سلام

کدتون اصلا مشکلی نداره

همین تیکه کد رو توی Try Catch قرار بدید 


Try
	cur1= sql1.ExecQuery("SELECT * FROM tan  where adad="&EditText1.Text&"")
	For i=0 To cur1.RowCount-1
	cur1.Position=i
	Next
	Catch
		ToastMessageShow(LastException,True)
	End Try

ببینید توی Catch هنگام خطا چه چیزی رو toast میکنه ؟

متاسفانه باز هم میگه برنامه متوقف شده است و برنامه بسته میشه و هیچ پیامی نمیده

چکار میتونم بکنم؟

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

در ۱ ساعت قبل، ali1221 گفته است :

متاسفانه باز هم میگه برنامه متوقف شده است و برنامه بسته میشه و هیچ پیامی نمیده

چکار میتونم بکنم؟

مطمعنی بخاطر این کده؟

اینم تغییر بده تست کن ولی بنظرم مشکلت از جای دیگش

 

cur1= sql1.ExecQuery("SELECT * FROM tan  where adad ='" & EditText1.Text & "'")

 

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

سلام

هموطن ارور لاگتو بذار ببینیم چی میگه

شما یه چیزی میگین، نمیشه از حرف معنیه ارور رو متوجه شد که

بذارید، اگه بلد باشیم کمک میکنیم بهتون

 

 

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

بایگانی شده

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

  • کاربران آنلاین در این صفحه   0 کاربر

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