بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
نوشتن کوئری مناسب
یه جدول دارم که شامل id,title,matn هست بوسیله یه کوری من اسم تایتل رو گرفتم و توی لیست ویوو گذاشتم حالا می خوام کوئری مناسب برای کلیک روی لیست ویو که به یه اکتویتی دیگه بره و هم تایتل و هم متن رو نشون بده؟
این کوئرس انتخاب براساس تایتل هست
public String Season_display(int row) {
Cursor cu = mydb.rawQuery(" select * from content group by Title order by ID ASC ", null);
cu.moveToPosition(row);
String s = cu.getString(1);
return s;
}
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
Shadow
10 سال پیش
0
0
این کوئری رو نوشتم ولی خطا میده و فورس کلوس میشه
public String main_display(String sea) {
Cursor cu = mydb.rawQuery(" select * from content where Title = " + sea, null);
Log.i("", " cu = " + cu);
cu.moveToPosition(0);
String s = cu.getString(2);
Log.i("", "s = " + s);
return s;
}
اولا ببینید چه خطایی میده. معمولا به زبان آدمیزاد توضیح میده.
دوما متغیر cu یک کرسر هست. تا حالا امتحان نکرده ام که کرسر به متن تبدیل می شود یا نه. برای اطمینان سطر سوم (شامل Log) را پاک بفرمایید.
سوما به نفع خودتونه که از همین الآن کدتون رو مرتب بنویسید. در سطر پنجم (که با String شروع میشه) نفش عدد دو چیه؟ این مدل نوشتن سه تا ایراد داره. (1) همین امروز ممکنه اشتباه تایپی داشته باشید و خودتون متوجه نشوید. (2) سال آینده که برای آپدیت برنامه اقدام می فرمایید همه این شماره ها را فراموش خواهید کرد و کارتان خیلی سخت می شود. (3) اگر بعداً یک تغییر کوچک در دیتابیس بدهید، باید خط به خط برنامه را چک کنید تا شماره فیلدها درست باشد.
بهتر است از نظمی که استاد آقاجانی تدریس کرده اند پیروی کنید. مثلا به این صورت بنویسید:
String name = cursor.getString(cursor.getColumnIndex("person_name")); (10 سال پیش)
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .