بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ
ریختن مقدار چند spinner به یک database
مدیریت گفتگو
آخرین تغییر: 11 سال پیش
سلام (مشکل حل شد) با تشکر از احسان عزیز
من database ای که استاد اموزش داده رو در برنامه ام دارم
و 5 تا spinner دارم که هر کدوم مقادیر سال ، ماه ، روز، ساعت و دقیقه رو در بر میگیرند و مقدار های هر کدومشون توی یه int یا string ریخته میشه
حالا می خوام این مقادیر رو توی جدولی که در database ساختم بریزم اما هنوز موفق نشدم (روش های زیادیو امتحان کردم جواب نگرفتم)
شما چه راحلی پیشنهاد میدین؟
ممنون
این database امه:
database = SQLiteDatabase.openOrCreateDatabase(DIR_DATABASE + "/database.sqlite", null);
database.execSQL("CREATE TABLE IF NOT EXISTS storage (" +
"storage_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE , " +
"storage_year INTEGER, " +
"storage_month INTEGER, " +
"storage_day INTEGER" +
"storage_hour INTEGER" +
"storage_min INTEGER" +
"storage_ampm INTEGER" +
")");
اینم اطلاعاتی که می خوام وارد کنم:
private int AM_PM;
private int HOUR;
private int MIN;
private int DAY;
private int MONTH;
private int YEAR;
پاسخها 2
چطور متغیر رو که داخلش مقدار هست رو وارد دیتابیس کنم؟
این کد رو نوشتم ولی ولی وقتی وارد اتکتیویتی می شم کرش می کنه
G.database.execSQL("INSERT INTO storage (storage_year,storage_month,storage_day,storage_hour,storage_min,storage_ampm)
VALUES (" + YEAR + "," + MONTH + "," + DAY + "," + HOUR + "," + MIN + "," + AM_PM + ")");
نظرات
آها. الان کدشو بهت میدم. صبر کن
نمیدونم کدم رو کجا نوشتم. باید متغیر رو به این صورت بنویسی: '"+YEAR+"' یعنی دوتا تک کوتیشن، بعد داخلش دوتا دبل کوتیشن، بعد داخلش دوتا بعلاوه، بعد متغیر
این کل کد من هرجوری می نویسم کرش می کنه حتی با روش احسان
کل کد مشکلی نداره فقط برای کد وارد کردن داده ها به دیتا بیس که در خط اخره کرش می کنه
public class ActivityGivingInfo extends Activity { Spinner spin_month; String month_value; String[] month = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" }; //array of strings used to populate the spinner Spinner spin_day; String day_value; String[] day31 = { "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31" }; //array of strings used to populate the spinner String[] day30 = { "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30" }; //array of strings used to populate the spinner String[] day = { "" }; Spinner spin_year; String year_value; String[] year = { "1393", "1394", "1395", "1396", "1397", "1398" }; //array of strings used to populate the spinner Spinner spin_hour; String hour_value; String[] hour = { "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12" }; Spinner spin_min; String min_value; String[] min = { "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59" }; Spinner spin_ampm; String ampm_value; String[] ampm = { "AM", "PM" }; private ArrayAdapter<String> spin_adapter_day; private int AM_PM; private int HOUR; private int MIN; private int DAY; private int MONTH; private int YEAR; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.giving_info); //Spinner month*************************************************************************
spin_month = (Spinner) findViewById(R.id.spinner_month);//fetching view's id spin_month.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { month_value = month[position];//saving the value selected if (position < 6) { spin_adapter_day = new ArrayAdapter<String>(arg0.getContext(), android.R.layout.simple_spinner_item, day31); day = day31; } else { spin_adapter_day = new ArrayAdapter<String>(arg0.getContext(), android.R.layout.simple_spinner_item, day30); day = day30; } spin_day.setAdapter(spin_adapter_day); Toast.makeText(ActivityGivingInfo.this, month_value, Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> arg0) { Toast.makeText(ActivityGivingInfo.this, "choose one pls", Toast.LENGTH_SHORT).show(); } }); ArrayAdapter<String> spin_adapter_month = new ArrayAdapter<String>(ActivityGivingInfo.this, android.R.layout.simple_spinner_item, month); spin_month.setAdapter(spin_adapter_month); //Spinner year******************************************************************************************* spin_year = (Spinner) findViewById(R.id.Spinner_year);//fetching view's id spin_year.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { year_value = year[position];//saving the value selected } @Override public void onNothingSelected(AdapterView<?> arg0) {} }); ArrayAdapter<String> spin_adapter_year = new ArrayAdapter<String>(ActivityGivingInfo.this, android.R.layout.simple_spinner_item, year); spin_year.setAdapter(spin_adapter_year); //Spinner day************************************************************************************* spin_day = (Spinner) findViewById(R.id.Spinner_day);//fetching view's id spin_day.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { day_value = day[position];//saving the value selected } @Override public void onNothingSelected(AdapterView<?> arg0) {} }); spin_hour = (Spinner) findViewById(R.id.Spinner_hour);//fetching view's id spin_hour.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { hour_value = hour[position];//saving the value selected } @Override public void onNothingSelected(AdapterView<?> arg0) {} }); ArrayAdapter<String> spin_adapter_hour = new ArrayAdapter<String>(ActivityGivingInfo.this, android.R.layout.simple_spinner_item, hour); spin_hour.setAdapter(spin_adapter_hour); spin_min = (Spinner) findViewById(R.id.Spinner_min);//fetching view's id spin_min.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { hour_value = min[position];//saving the value selected } @Override public void onNothingSelected(AdapterView<?> arg0) {} }); ArrayAdapter<String> spin_adapter_min = new ArrayAdapter<String>(ActivityGivingInfo.this, android.R.layout.simple_spinner_item, min); spin_min.setAdapter(spin_adapter_min); spin_ampm = (Spinner) findViewById(R.id.Spinner_ampm);//fetching view's id spin_ampm.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { ampm_value = ampm[position];//saving the value selected if (ampm_value.equals("AM")) { AM_PM = 0; } else { AM_PM = 1; } } @Override public void onNothingSelected(AdapterView<?> arg0) {} }); ArrayAdapter<String> spin_adapter_ampm = new ArrayAdapter<String>(ActivityGivingInfo.this, android.R.layout.simple_spinner_item, ampm); spin_ampm.setAdapter(spin_adapter_ampm); Button btngiveinfo = (Button) findViewById(R.id.btngive); btngiveinfo.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { if (year_value != null) { YEAR = Integer.parseInt(year_value); } if (month_value != null) { MONTH = Integer.parseInt(month_value); } if (day_value != null) { DAY = Integer.parseInt(day_value); } if (hour_value != null) { HOUR = Integer.parseInt(hour_value); } if (min_value != null) { MIN = Integer.parseInt(min_value); } Toast.makeText(ActivityGivingInfo.this, "shart kamele", Toast.LENGTH_SHORT).show(); G.database.execSQL("INSERT INTO storage (storage_year,storage_month,storage_day,storage_hour,storage_min,storage_ampm) VALUES ('" + YEAR + "','" + MONTH + "','" + DAY + "','" + HOUR + "','" + MIN + "','" + AM_PM + "')"); } }); } }
نظرات
شما نمیخواد اینهمه اطلاعات رو وارد کنی. با یه editText تست کن ببین مشکل از کوئریته یا چیز دیگه
دقیقا می دونم مشکل از این خطه: G.database.execSQL.......
این خط رو کامنت کنم همه چی درسته وقتی این خط می خواد اجرا شه کرش می کنه
دقیقا می دونم مشکل از این خطه: G.database.execSQL.......
این خط رو کامنت کنم همه چی درسته وقتی این خط می خواد اجرا شه کرش می کنه
خب کرشتو بذار ببین واسه چی کرش میکنه
از genymotion استفاده می کنم logcat چیزی نشون نمیده!
خب از emulator خود ide استفاده کن. ببین میگم اکلیپس افتضاحه واسه همینه. یکی از خوبیای اندروید استودیو عدم مشکل با جنی موشنه
بدبختی همینجاست دیگه نمی زاره امولاتور بسازم!!! میگه Target location is not inside the SDK. در حالی که SDK ام درسته!
خیلی کلافه شدم از اکلیپس!
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
ویرایش
پیام
نظرات