آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

حذف یک ایتم از لیست ویو و دیتا بیس(حل شده)

sun.of.god.7  11 سال پیش  11 سال پیش
0 0

من یک لیست ویو دارم که از دیتا بیس اطلاعات رو میخونه

حالا میخوام بگم که اگه رو هر ایتم از لیست ویو کلیک شد  اون سطری تو دیتا بیس که داره این ایتم رو نشون میده حذف بشه

 

من از این کد استفاده کردم ولی مشکلش اینه که اگه دو تا کاملا مشابه باشن هردو حذف میشن که من نمیخوام اینطور باشه

final Struct s = some.list.get(position);
String d = s.body;
String t = s.title;

G.database.execSQL("DELETE FROM tbname WHERE msg='" + d + "' and num='" + t + "'");

+1 0
این مشکل به این دلیل پیش میباد که شما بر اساس محتوا دنبال یه رکورد می گردید، اگر دو تا رکورد محتوا یکسان داشته باشند، جفتشون پاک میشن. برای اینکه این مشکل پیش نیاد باید به هر آیتم آیدی بدی(برابر با آیدی توی دیتابیس) و با توجه با آیدی رکورد رو پاک کنید (11 سال پیش)
0 0
تو کلاس adapterNote کد رو به این صورت اصلاح کن (11 سال پیش)
 برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال 
Devtpoint  11 سال پیش
0 0

پاسخ به سوال 
Devtpoint  11 سال پیش
0 0

            imgDelete.setOnClickListener(new OnClickListener() {

                AlertDialog.Builder builder = new AlertDialog.Builder(G.curentActivity); ;
                StructNote          note;


                @Override
                public void onClick(View arg0) {
                    note = G.notes.get(position);
                    builder.setIcon(android.R.drawable.ic_dialog_info);
                    builder.setMessage("  آیا مایل به حذف محصول هستید؟ ");
                    builder.setPositiveButton("بله", new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface arg0, int arg1) {

                            adapter.remove(item);
                            G.deleteOfDB(note.name, note.some, note.vahed, note.priceVahed, note.priceComplete, note.date, note.month, note.year, true);
                        }
                    });
                    builder.setNegativeButton("نه", new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface arg0, int arg1) {
                            G.curentActivity.finish();
                        }
                    });
                    builder.create().show();
                }
            });

پاسخ به سوال 
Devtpoint  11 سال پیش
0 0

تابع delete در کلاس G



    public static void deleteOfDB(String name, int some, String vahed, double priceVahed, double priceComplete, int date, int month, int year, Boolean chkBox) {

        database.execSQL("DELETE FROM TableOne WHERE  mds_name='" + name + "' and mds_some='" + some + "'");

    }


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .