بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پیغام خطا در بروزرسانی دیتابیس در لیست ویو
سلام من در لیست ویو بعد از نمایش خواستم که وقتی هر کدام از چک باکس ها کلیک شد مقدار آن در دیتابیس هم تغییر کنه و این کد رو در لیست ویو نوشتم ولی از ارسال مقادیر به متد و برگشتش خطا میگیره و کرش میکنه
public void fill(final ArrayAdapter<StructNote> adapter, final StructNote item, final int position) {
txt_name.setText(item.name);
checkshow.setChecked(item.checshow);
checkshow.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
int ks;
CheckBox checkBox = (CheckBox) view;
handler = new DatabaseHandler();
DatabaseHandler db = new DatabaseHandler(null);
item.checshow = checkBox.isChecked();
if (item.checshow) {
ks = 1;
handler.Update_today(ks, item.id);
}
}
});
واین هم تو قسمت آپدیت دیتابیس نوشتم
public class DatabaseHandler
{
public static SQLiteDatabase database;
public static final String DIR_sdcard = Environment.getExternalStorageDirectory().getAbsolutePath();
public static final String DIR_database = DIR_sdcard + "/database_food/";
public static final String Registeration_food = "Registeration_food";
public static final String DATABASE_NAME = "tedatabase_foodst";
public static final int DATABASE_VERSION = 1;
public static final String TABLE_CREATE_Registeration_food = "CREATE TABLE IF NOT EXISTS Registeration_food " +
"(id_food INTEGER PRIMARY KEY AUTOINCREMENT " +
" NOT NULL UNIQUE , name_food TEXT, chkshow_food bool)";
DataBaseHelper dbhelper;
Context context;
SQLiteDatabase db;
public DatabaseHandler(Context ctx)
{
this.context = ctx;
dbhelper = new DataBaseHelper(context);
}
private static class DataBaseHelper extends SQLiteOpenHelper
{
public DataBaseHelper(Context ctx)
{
super(ctx, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db)
{
db.execSQL(TABLE_CREATE_Registeration_food);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXIST Registeration_food");
onCreate(db);
}
}
public DatabaseHandler open()
{
db = dbhelper.getWritableDatabase();
return this;
}
public void close()
{
dbhelper.close();
}
public long Update_today(int chk, int id) {
{
String s = "id_food =='" + id + "'";
String chkshow_food = "chkshow_food";
//This class is used to store a set of values
ContentValues content = new ContentValues();
content.put(chkshow_food, chk);
return db.update(Registeration_food, content, s, null);
}
}
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .