رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

پست های پیشنهاد شده

سلام.

 

من تو برنامم از دیتا بیس استفاده کرد.

در  ورژن جدید برنامه ام در دیتابیس تغییراتی ایجاد کردم.اما و وقتی روی یک گوشی ک قبلا برنامه نصب بوده،حالا دوباره نصب میکنم دیتا بیس تغییری نکرده.و باید کلا برنامه رو اول از روی گوشی انیستال کنم و دوباره نصب کنم تا تغییرات دیتا بیسو ببینم.

 

برای رفع این مشکل باید چ راه حلی بکار ببرم؟

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در ۱ ساعت قبل، مهندس گفته است :

سلام.

 

من تو برنامم از دیتا بیس استفاده کرد.

در  ورژن جدید برنامه ام در دیتابیس تغییراتی ایجاد کردم.اما و وقتی روی یک گوشی ک قبلا برنامه نصب بوده،حالا دوباره نصب میکنم دیتا بیس تغییری نکرده.و باید کلا برنامه رو اول از روی گوشی انیستال کنم و دوباره نصب کنم تا تغییرات دیتا بیسو ببینم.

 

برای رفع این مشکل باید چ راه حلی بکار ببرم؟

 

 

ورژن دیتابیس رو باید تغییر بدید که دیتابیس اپدیت شود

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 6 ساعت قبل، Farzad Sarseifi گفته است :

ورژن دیتابیس رو باید تغییر بدید که دیتابیس اپدیت شود

 ورژن رو چطور تغییر بدم؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام اگه ممکنه کدی که برای ساخت دیتابیس نوشتین بزارین تا رو کدتون توضیح بدیم.

اگه از کلاس SqLiteOpenHelper یه کلاس ساخته باشین باید برای دیتابیستون یه ورژن گذاشته باشین.حالا اگه این ورژن تغییر بدین (مثلا 1 بوده الان بزارین 2) و اینو تو متد onUpgrade مشخص کنید. دیتابیستون اپدیت میشه.این یک نمونه از این کلاس هستش.


public class MyDataBase extends SQLiteOpenHelper {



    public AquaPlantDataBase(Context context) {
        super(context, DBConstantManager.DATABASE_NAME.MY_DATABASE_NAME , null, DBConstantManager.DATABASE_VERSION.DB_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {

        sqLiteDatabase.execSQL(DBConstantManager.TABLE_SCRIPT.T_FAVORITS);
        sqLiteDatabase.execSQL(DBConstantManager.TABLE_SCRIPT.T_FILTERCACHE);

    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int oldVersion, int newVersion) {
    }
}

اگه دقت کنید تو constructor یه ورژن دادم (آخرین پارامتر ورودی) وقتی دیتابیس شما ساخته میشه برای اولین بار این ورژن ثبت میشه و بعد از هر اپدیت برنامه این ورژن چک میشه در صورتی که ورژن جدید با قبلی یکی باشه تغییری انجام نمیشه ولی اگه این ورژن از قبلی یکی بیشتر باشه متد onupgrade صدا زده میشه و دیتابیستون اپدیت میشه.

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 9 ساعت قبل، a.khosroabadi گفته است :

سلام اگه ممکنه کدی که برای ساخت دیتابیس نوشتین بزارین تا رو کدتون توضیح بدیم.

اگه از کلاس SqLiteOpenHelper یه کلاس ساخته باشین باید برای دیتابیستون یه ورژن گذاشته باشین.حالا اگه این ورژن تغییر بدین (مثلا 1 بوده الان بزارین 2) و اینو تو متد onUpgrade مشخص کنید. دیتابیستون اپدیت میشه.این یک نمونه از این کلاس هستش.



public class MyDataBase extends SQLiteOpenHelper {



    public AquaPlantDataBase(Context context) {
        super(context, DBConstantManager.DATABASE_NAME.MY_DATABASE_NAME , null, DBConstantManager.DATABASE_VERSION.DB_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {

        sqLiteDatabase.execSQL(DBConstantManager.TABLE_SCRIPT.T_FAVORITS);
        sqLiteDatabase.execSQL(DBConstantManager.TABLE_SCRIPT.T_FILTERCACHE);

    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int oldVersion, int newVersion) {
    }
}

اگه دقت کنید تو constructor یه ورژن دادم (آخرین پارامتر ورودی) وقتی دیتابیس شما ساخته میشه برای اولین بار این ورژن ثبت میشه و بعد از هر اپدیت برنامه این ورژن چک میشه در صورتی که ورژن جدید با قبلی یکی باشه تغییری انجام نمیشه ولی اگه این ورژن از قبلی یکی بیشتر باشه متد onupgrade صدا زده میشه و دیتابیستون اپدیت میشه.

واقعا یک دنیا سپاس.

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

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

  • مطالب مشابه

    • توسط parsdc
      سلام به همه دوستان
      زمانی که سرچ میکنیم در دیتابیس sqlite در لیست نام فارسی، متاسفانه حروف گ چ پ ژ ک بدون ترتیب حروف برمیگردونه، در این مورد تحقیق ها و تست های زیادی کردم، و متوجه شدم کد اسکی این حروف از نظر عددی  نظم ترتیبی ندارد
      لیست حروف فارسی با کد اسکی رو ببینید
      192    ہ
      193    ء
      194    آ
      195    أ
      196    ؤ
      197    إ
      198    ئ
      199    ا
      200    ب
      201    ة
      202    ت
      203    ث
      204    ج
      205    ح
      206    خ
      207    د
      208    ذ
      209    ر
      210    ز
      211    س
      212    ش
      213    ص
      214    ض
      215    ×
      216    ط
      217    ظ
      218    ع
      219    غ
      220    ـ
      221    ف
      222    ق
      223    ك
      224    à
      225    ل
      226    â
      227    م
      228    ن
      229    ه
      230    و
       
      236    ى
      237    ي
       
      129    پ
      141    چ
      142    ژ
      152    ک
      144    گ

      حرف ک عربی 223 هست در جای خودش هست اما ک فارسی 152 هست از عدد حرف آ هم کمتر هست و در سرچ بالاتر از آ قرار میگیره
      سایر حروف مشکل دار هم به همین شکل پ چ ژ ک گ
      کد های utf8 هم بررسی کردم و این مشکل رو داره، واقعا نمیدونم ماکروسافت چیکار کرده که در دیتابیس های اون این مشکل وجود نداره، شما راه حلی اصولی براش نمیشناسید؟
    • توسط Javad Mahmoodi
      سلام
      من میخوام تمام اطلاعات ذخیره شده در برنامه ام را که در sqlite هست رو با زدن دکمه ارسال و بصورت یکجا به دیتابیس sql server ارسال کنم.
      کانکشن رو بین برنامم و sql server  که توسط کتابخانه jdbc هست ایجاد کردم.
      الان مشکلم این هست که چجوری تمام اطلاعات رو مستقیم و فقط با زدن دکمه ارسال به sql server ارسال کنم.
      ممنون میشم راهنمایی فرمایید(ترجیحاً با کد)
    • توسط jonoob
      سلام به همگی
      من دو تیبل دارم به نامهای
       id+start+end=data1
      id+id data1+name+price=data2
      در بالا نام تیبل و فیلدها را نوشتم
      همینطور که در فیلدها میبینید در تیبل دو ای دی تیبل یک هم نوشته شده میخواهم وقتی مثلا ایدی یک تیبل یک فراخوانی بشه اطلاعاتی که در تیبل دو هست و ای دی دیتاش یکی هست هم نمایش داده بشه
      متشکرم
    • توسط fahmide
      با سلام
      من توی پروژم یک ExpandableListView دارم و یه دیتابیس توی دیتابیس با استفاده از کد والد ، والد هرکدوم از فرزندان مشخص میشه. مسله اینه که کاربر امکان اضافه کردن والد و فرزند رو توی دیتابیس داره من هرکاری میکنم درست لود نمیشه اگه ممکنه راهنمایی کنین
    • توسط مهندس
      سلام دوستان.
      چجوری میتونم ساعت رو در دیتابیس sqlite ذخیره کنم؟؟
      منظورم اینه ک من یکسری داده دارم میخام وقتی ثبت دیتابیس شد، ساعتی ک کاربر داده رو ثبت میکنه هم در یک فیلد ثبت بشه.
      من یه فیلد با نوع TIME در دیتابیس گذاشتم، اما نمیدونم چجوری و با چه توابعی ساعت رو ذخیره کنم؟؟
      در ضمن راهی هست ک ساعت واقعی ثبت بشه؟؟
      یعنی اینکه اگه یه وقت کاربر ساعت گوشیشو تغییر داد، بازم تایم واقعی time zone ایران ثبت بشه ؟؟؟
  • فایل

×
×
  • اضافه کردن...