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

ارر دیتابیس


hamed255

سوال

سلام خسته نباشید

ببخشید کسی میدونه این ارر چی میخواد بگه؟

Error occurred on line: 26 (frm_food_info)
android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
	at android.database.AbstractCursor.checkPosition(AbstractCursor.java:460)
	at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:136)
	at android.database.AbstractWindowedCursor.getString(AbstractWindowedCursor.java:50)
	at anywheresoftware.b4a.sql.SQL$CursorWrapper.GetString(SQL.java:377)
	at b4a.example.frm_food_info._activity_create(frm_food_info.java:370)
	at java.lang.reflect.Method.invoke(Native Method)
	at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:732)
	at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:351)
	at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:255)
	at java.lang.reflect.Method.invoke(Native Method)
	at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:144)
	at b4a.example.frm_food_info.afterFirstLayout(frm_food_info.java:104)
	at b4a.example.frm_food_info.access$000(frm_food_info.java:17)
	at b4a.example.frm_food_info$WaitForLayout.run(frm_food_info.java:82)
	at android.os.Handler.handleCallback(Handler.java:751)
	at android.os.Handler.dispatchMessage(Handler.java:95)
	at android.os.Looper.loop(Looper.java:154)
	at android.app.ActivityThread.main(ActivityThread.java:6144)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:892)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)

 

کدهایی که زدم اینان

Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout(“frm_food_info”)

Main.cur=Main.sql.ExecQuery(“SELECT * FROM tbl_ashpazi2 WHERE id=”&id2)
Main.cur.Position=id2

lbl_onvan.Text=Main.cur.GetString(“foodname”)

Dim lbl_txt_info As Label
lbl_txt_info.Initialize(“lbl_txt_info”)
slv_food_info.Panel.AddView(lbl_txt_info,0,0,100%x,100%y)
lbl_txt_info.Text=Main.cur.GetString(“foodtext”)
Dim stu As StringUtils
lbl_txt_info.Height=stu.MeasureMultilineTextHeight(lbl_txt_info,lbl_txt_info.Text)
slv_food_info.Panel.Height=lbl_txt_info.Height
End Sub

خط ۲۶ هم اینه

lbl_onvan.Text=Main.cur.GetString(“foodname”)

 

ممنونم

 

 

 

 

 

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

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

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

در 2 ساعت قبل، hamed255 گفته است :

سلام خسته نباشید

ببخشید کسی میدونه این ارر چی میخواد بگه؟

کدهایی که زدم اینان

خط ۲۶ هم اینه

ممنونم

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

اما در مورد مشکل. خطای CursorIndexOutOfBoundsException یعنی اینکه کوئری شما هیچ نتیجه ای نداشته و شما میخواین ازش مقدار بگیرین. قبل از هر عملیاتی چک کنید که نتیجه کوئری خالی نباشه. تو لاگ تعداد رکوردها رو چک کنید

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

در 6 ساعت قبل، محمدرضا شاهپیری گفته است :

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

اما در مورد مشکل. خطای CursorIndexOutOfBoundsException یعنی اینکه کوئری شما هیچ نتیجه ای نداشته و شما میخواین ازش مقدار بگیرین. قبل از هر عملیاتی چک کنید که نتیجه کوئری خالی نباشه. تو لاگ تعداد رکوردها رو چک کنید

ممنونم بابت پاسختون
توی نویکت وقتی کوئری میگیرم همه چی درسته
عینا همونو کپی کردم نوشتم توی بیسیک
اما ارر میده
سر در نمیارم چرا؟
کدهام به نظرم درسته اما ....

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

ببینید عزیز ارور مشخصه.

شما خط به خط لاگ بگیرید. مثلا مقدار id2 رو تو لاگ ببینید چی هست. 

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

سلام

Index 0 requested, with a size of 0

فکر می کنم می گوید که از صفر تا خروجی ، ایندکس صفر(همون در بین خروجی ها اولی) رو نمی تونم بدم. چون کوئری شما خروجی نداره.

از شرطی که گذاشتین مطمئن شوید

WHERE id=&id2

در ضمن اگر یک ردیف خروجی داشته باشه 

cur.Position

رو صفر قرار بده

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

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

چون در Query شما فقط دارید یک مقدار رو میگیرید. فرضا id شما 24 باشه 

و در این خط Main.cur.Position=id2 دارید میگید که سطر 24 رو نمایش بده در صورتی که یک عدد سطر برای نمایش فراخونی نداره 

و به همین علت اررور دریافت کردید.

شما مقدار پوزیشن رو برابر 0 کنید حل خواهد شد.

 

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

بایگانی شده

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

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

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