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

ریختن مقدار چند spinner به یک database

m-developer  11 سال پیش  11 سال پیش
0 0

سلام          (مشکل حل شد) با تشکر از احسان عزیز

من 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;
+1 0
ظاهرا راحتترین راه رو امتحان نکردین. شما بیا توی رویداد setOnItemClickListener اسپینر، مقدار آیتم کلیک شده رو بریز داخل متغیر. بعد اون متغیر رو Insert کن داخل بانک. (11 سال پیش)
0 0
اون کارو کردم متفیر هام پر از مقدار انتخابی توی اسپینر هستن ایجا فقط خواستم متغیر هام رو معرفی کنم که چی هستن مشکل من سر insert کردن توی database هست (11 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
m-developer  11 سال پیش
0 0

چطور متغیر رو که داخلش مقدار هست رو وارد دیتابیس کنم؟

 این کد رو نوشتم ولی  ولی وقتی وارد اتکتیویتی می شم کرش می کنه

 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 + ")");

 

 

 

0 0
آها. الان کدشو بهت میدم. صبر کن (11 سال پیش)
+1 0
نمیدونم کدم رو کجا نوشتم. باید متغیر رو به این صورت بنویسی: '"+YEAR+"' یعنی دوتا تک کوتیشن، بعد داخلش دوتا دبل کوتیشن، بعد داخلش دوتا بعلاوه، بعد متغیر (11 سال پیش)
پاسخ به سوال 
m-developer  11 سال پیش
0 0

این کل کد من هرجوری می نویسم کرش می کنه حتی با روش احسان

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

 
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 + "')"); } }); } }
0 0
شما نمیخواد اینهمه اطلاعات رو وارد کنی. با یه editText تست کن ببین مشکل از کوئریته یا چیز دیگه (11 سال پیش)
0 0
دقیقا می دونم مشکل از این خطه: G.database.execSQL....... این خط رو کامنت کنم همه چی درسته وقتی این خط می خواد اجرا شه کرش می کنه (11 سال پیش)
0 0
دقیقا می دونم مشکل از این خطه: G.database.execSQL....... این خط رو کامنت کنم همه چی درسته وقتی این خط می خواد اجرا شه کرش می کنه (11 سال پیش)
0 0
خب کرشتو بذار ببین واسه چی کرش میکنه (11 سال پیش)
0 0
از genymotion استفاده می کنم logcat چیزی نشون نمیده! (11 سال پیش)
0 0
خب از emulator خود ide استفاده کن. ببین میگم اکلیپس افتضاحه واسه همینه. یکی از خوبیای اندروید استودیو عدم مشکل با جنی موشنه (11 سال پیش)
0 0
بدبختی همینجاست دیگه نمی زاره امولاتور بسازم!!! میگه Target location is not inside the SDK. در حالی که SDK ام درسته! خیلی کلافه شدم از اکلیپس! (11 سال پیش)

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