🛠️ Migration Table – āϏāĻšāϜ āĻ­াāώা⧟ āĻŦ্āϝাāĻ–্āϝা

 

🛠️ Migration Table – āϏāĻšāϜ āĻ­াāώা⧟ āĻŦ্āϝাāĻ–্āϝা

Migration Table āĻŽাāύে āĻšāϞো āĻĄাāϟাāĻŦেāϏেāϰ āφāĻĒāĻĄেāϟ āĻ•āϰা! 🤔

āϧāϰুāύ, āφāĻĒāύি āĻāĻ•āϟা Android āĻ…্āϝাāĻĒ āĻŦাāύি⧟েāĻ›েāύ, āϝেāĻ–াāύে āĻāĻ•āϟা User Table āφāĻ›ে।
📌 āĻĒ্āϰāĻĨāĻŽে User Table āĻĻেāĻ–āϤে āĻāĻŽāύ āĻ›িāϞঃ

ID Name Email
1 Alex alex@email.com
2 Bob bob@email.com

āĻāĻ–āύ, āφāĻĒāύি āĻ িāĻ• āĻ•āϰāϞেāύ Phone Number āĻĢিāϞ্āĻĄ āϝোāĻ— āĻ•āϰāĻŦেāύ!
āĻ•িāύ্āϤু āϏāĻŽāϏ্āϝা āĻšāϞো— āĻĄাāϟাāĻŦেāϏ āϤো āφāĻ—েāχ āĻŦাāύাāύো! āĻāĻ–āύ āĻ•ীāĻ­াāĻŦে āύāϤুāύ Phone Number āϝোāĻ— āĻ•āϰāĻŦেāύ, āφāĻ—েāϰ āĻĄাāϟা āĻŽুāĻ›েāĻ“ āĻĢেāϞāϤে āϚাāύ āύা? đŸ¤¯

āϏāĻŽাāϧাāύ: Migration Table! 🚀


📌 Migration Table āĻ•ী?

Migration Table āĻšāϞো āĻĄাāϟাāĻŦেāϏেāϰ āϏ্āϟ্āϰাāĻ•āϚাāϰ āĻĒāϰিāĻŦāϰ্āϤāύ āĻ•āϰাāϰ āĻāĻ•āϟা āĻĒāĻĻ্āϧāϤি, āϝেāĻ–াāύে āφāĻ—েāϰ āĻĄাāϟা āĻŽুāĻ›ে āύা āĻĢেāϞে āύāϤুāύ āĻĢিāϚাāϰ āϝোāĻ— āĻ•āϰা āĻšā§Ÿ।

āĻĢিāϞ্āĻĄ (Column) āϝোāĻ— āĻ•āϰা āĻŦা āĻŽুāĻ›া
āύāϤুāύ āϟেāĻŦিāϞ āĻŦাāύাāύো
āĻ•োāύো āϟেāĻŦিāϞেāϰ āύাāĻŽ āĻĒāϰিāĻŦāϰ্āϤāύ āĻ•āϰা
āĻĄাāϟাāϰ āϟাāχāĻĒ āĻĒāϰিāĻŦāϰ্āϤāύ āĻ•āϰা


📖 āĻŦাāϏ্āϤāĻŦ āωāĻĻাāĻšāϰāĻŖ (Room Database + Kotlin)

āϧāϰুāύ, āφāĻŽāϰা Room Database āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāĻ›ি, āĻāĻŦং āφāĻŽাāĻĻেāϰ User Table āĻ›িāϞ āĻāχāϰāĻ•āĻŽঃ

@Entity(tableName = "users")
data class User(
    @PrimaryKey(autoGenerate = true) val id: Int,
    val name: String,
    val email: String
)

āĻāĻ–āύ āφāĻŽāϰা Phone Number āϝুāĻ•্āϤ āĻ•āϰāϤে āϚাāχ। āĻāϜāύ্āϝ Migration Table āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāĻŦো।

🛠️ Step 1: āύāϤুāύ Version āϤৈāϰি āĻ•āϰুāύ

Room Database-āĻāϰ āĻ­াāϰ্āϏāύ āφāĻĒāĻ—্āϰেāĻĄ āĻ•āϰāϤে āĻšāĻŦে—

@Database(entities = [User::class], version = 2)
abstract class AppDatabase : RoomDatabase() {
    abstract fun userDao(): UserDao
}

🛠️ Step 2: Migration Code āϞিāĻ–ুāύ

val MIGRATION_1_2 = object : Migration(1, 2) {
    override fun migrate(database: SupportSQLiteDatabase) {
        database.execSQL("ALTER TABLE users ADD COLUMN phone_number TEXT")
    }
}

āĻāĻ–াāύে āφāĻŽāϰা ALTER TABLE āĻĻি⧟ে Phone Number āĻ•āϞাāĻŽ āϝুāĻ•্āϤ āĻ•āϰেāĻ›ি।

🛠️ Step 3: Migration Enable āĻ•āϰুāύ

val db = Room.databaseBuilder(
    context,
    AppDatabase::class.java, "my_database"
)
    .addMigrations(MIGRATION_1_2)
    .build()

āĻŦ্āϝāϏ! āφāĻ—েāϰ āĻĄাāϟা āύা āĻšাāϰি⧟েāχ āύāϤুāύ āĻĢিāϞ্āĻĄ āϝোāĻ— āĻšā§Ÿে āĻ—েāϞ! 🎉


📌 āĻ•āĻ–āύ Migration āĻĒ্āϰ⧟োāϜāύ?

  • Table-āĻ āύāϤুāύ Column āϝোāĻ— āĻ•āϰāϞে
  • Column-āĻāϰ āĻĄাāϟা āϟাāχāĻĒ āĻĒāϰিāĻŦāϰ্āϤāύ āĻ•āϰāϞে
  • āύāϤুāύ Table āϝোāĻ— āĻ•āϰāϞে
  • āĻ•োāύো āĻĒুāϰāύো Table āĻĄিāϞিāϟ āĻ•āϰāϞে

🚀 āϏুāĻŦিāϧা (Why Use Migration Table?)

āĻĄাāϟা āĻšাāϰাāύোāϰ āϭ⧟ āύেāχ!
āĻĒুāϰāύো āĻ…্āϝাāĻĒ āφāĻĒāĻĄেāϟ āĻ•āϰāϞেāĻ“ āĻ•োāύো āϏāĻŽāϏ্āϝা āĻšāĻŦে āύা!
Production āĻ…্āϝাāĻĒে āϏāĻšāϜে āĻĒāϰিāĻŦāϰ্āϤāύ āφāύা āϝা⧟!

📌 āϏংāĻ•্āώেāĻĒে: Migration Table āĻāĻŽāύ āĻāĻ•āϟা āϟেāĻ•āύিāĻ•, āϝা āĻĄাāϟাāĻŦেāϏāĻ•ে āύāϤুāύāĻ­াāĻŦে āφāĻĒāĻĄেāϟ āĻ•āϰāϤে āϏাāĻšাāϝ্āϝ āĻ•āϰেāĻĒুāϰāύো āĻĄাāϟা āĻšাāϰাāύো āĻ›া⧜াāχ! 🚀

🛠 Migration Table - Explanation in simple language

Comments

Popular posts from this blog

AI (Artificial Intelligence) āϏāĻšāϜāĻ­াāĻŦে āĻŦোāĻাāϰ āϜāύ্āϝ āĻāĻ•āĻĻāĻŽ āĻŽāϏ্āϤিāώ্āĻ•-āĻŦাāύ্āϧāĻŦ āĻŦ্āϝাāĻ–্āϝা 🧠🤖

🧠 Regex āĻ•ী?

Kotlin-āĻ āĻ­েāϰিāϝ়েāĻŦāϞ āϘোāώāĻŖা āĻ•āϰাāϰ āĻĻুāχ āωāĻĒাāϝ়