đ ️ Entity āĻ্āϞাāϏ – āϏāĻšāĻ āĻাāώাā§ āĻŦুāĻুāύ
đ ️ Entity āĻ্āϞাāϏ – āϏāĻšāĻ āĻাāώাā§ āĻŦুāĻুāύ
Android āĻ ্āϝাāĻĒে Room Database āĻŦ্āϝāĻŦāĻšাāϰেāϰ āϏāĻŽā§ Entity āĻ্āϞাāϏ āϤৈāϰি āĻāϰা āĻšā§, āϝা āĻāĻāĻি āĻেāĻŦিāϞেāϰ āĻাāĻ াāĻŽো (Structure) āύিāϰ্āϧাāϰāĻŖ āĻāϰে।
đ Entity āĻ্āϞাāϏ āĻী?
Entity āĻšāϞো āĻāĻāĻি āĻŽāĻĄেāϞ āĻ্āϞাāϏ āϝা Room Database-āĻ āĻেāĻŦিāϞেāϰ āĻŽāϤ āĻাāĻ āĻāϰে।
āĻāĻি āĻāĻāĻি āϰিā§েāϞ āĻĄাāĻাāĻŦেāϏ āĻেāĻŦিāϞেāϰ āϰিāĻĒ্āϰেāĻেāύ্āĻেāĻļāύ, āϝেāĻাāύে āĻĒ্āϰāϤিāĻি āĻĢিāϞ্āĻĄ (āĻেāϰিā§েāĻŦāϞ) āĻĄাāĻাāĻŦেāϏেāϰ āĻāĻāĻি āĻāϞাāĻŽেāϰ āĻŽāϤ āĻāĻāϰāĻŖ āĻāϰে।
đ️ āϝেāĻŽāύ: āĻāĻĒāύি āϝāĻĻি āĻāĻāĻি User Table āĻŦাāύাāϤে āĻাāύ, āϤাāĻšāϞে
UserāύাāĻŽে āĻāĻāĻি Entity āĻ্āϞাāϏ āϤৈāϰি āĻāϰāϤে āĻšāĻŦে।
đ¯ Entity āĻ্āϞাāϏ āĻেāύ āĻĻāϰāĻাāϰ?
✅ Room Database āϏ্āĻŦā§ংāĻ্āϰিā§āĻাāĻŦে āĻāĻ āĻ্āϞাāϏāĻে SQLite āĻেāĻŦিāϞে āĻāύāĻাāϰ্āĻ āĻāϰে।
✅ āĻোāĻĄ āĻāϰāĻ āϏāĻšāĻ āĻ āĻ্āϞিāύ āĻšā§।
✅ āĻĄাāĻাāĻŦেāϏেāϰ āĻāύ্āϝ āĻāϞাāĻĻা SQL āϞেāĻা āϞাāĻে āύা, āĻাāϰāĻŖ Room āύিāĻেāĻ āĻেāĻŦিāϞ āϤৈāϰি āĻāϰে।
đ ️ Entity āĻ্āϞাāϏেāϰ āϏ্āĻ্āϰাāĻāĻাāϰ
āĻāĻāĻি āϏাāϧাāϰāĻŖ User Entity āĻ্āϞাāϏ āĻĻেāĻুāύ đ
import androidx.room.Entity
import androidx.room.PrimaryKey
@Entity(tableName = "users")
data class User(
@PrimaryKey(autoGenerate = true) val id: Int = 0,
val name: String,
val email: String,
val age: Int
)
đ āĻāĻাāύে āĻী āĻāĻāϞ?
✔ @Entity(tableName = "users") → āĻāĻি User āĻ্āϞাāϏāĻে āĻāĻāĻি āĻĄাāĻাāĻŦেāϏ āĻেāĻŦিāϞ āĻŦাāύিā§েāĻে।
✔ @PrimaryKey(autoGenerate = true) → id āĻĢিāϞ্āĻĄāĻি āĻĒ্āϰাāĻāĻŽাāϰি āĻি āĻāĻŦং āĻāĻি āϏ্āĻŦā§ংāĻ্āϰিā§āĻাāĻŦে āĻŦাā§āĻŦে।
✔ āĻ
āύ্āϝ āĻĢিāϞ্āĻĄāĻুāϞো (name, email, age) āĻĒ্āϰāϤিāĻি āĻāϞাāĻŽেāϰ āĻŽāϤ āĻাāĻ āĻāϰāĻŦে।
đ Room Entity āĻীāĻাāĻŦে āĻেāĻŦিāϞে āĻāύāĻাāϰ্āĻ āĻāϰে?
āĻāĻĒāϰেāϰ User Entity āĻে SQLite āĻেāĻŦিāϞে āĻāύāĻাāϰ্āĻ āĻāϰāϞে āĻāϰāĻāĻŽ āĻšāĻŦে đ
CREATE TABLE users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
email TEXT NOT NULL,
age INTEGER NOT NULL
);
đĄ Room āύিāĻে āĻĨেāĻেāĻ āĻāĻ SQL āϰাāύ āĻāϰে! āĻāĻĒāύাāĻে SQL āϞিāĻāϤে āĻšā§ āύা। đ
đš āĻ āϤিāϰিāĻ্āϤ Entity Annotation āϏāĻŽূāĻš
Entity āĻ্āϞাāϏে āĻāϰāĻ āĻিāĻু āĻুāϰুāϤ্āĻŦāĻĒূāϰ্āĻŖ āĻ ্āϝাāύোāĻেāĻļāύ āϰā§েāĻে đ
ā§§️⃣ @PrimaryKey (āĻĒ্āϰাāĻāĻŽাāϰি āĻি āύিāϰ্āϧাāϰāĻŖ āĻāϰে)
@PrimaryKey(autoGenerate = true) val id: Int
✔ āĻāĻি āĻĒ্āϰাāĻāĻŽাāϰি āĻি āϏেāĻ āĻāϰে।
✔ autoGenerate = true āĻĻিāϞে āĻāĻি āϏ্āĻŦā§ংāĻ্āϰিā§āĻাāĻŦে āϏংāĻ্āϝা āĻāύāĻ্āϰিāĻŽেāύ্āĻ āĻāϰে (1, 2, 3...)
⧍️⃣ @ColumnInfo (āĻāϞাāĻŽেāϰ āύাāĻŽ āĻাāϏ্āĻāĻŽাāĻāĻ āĻāϰা āϝাā§)
@ColumnInfo(name = "user_name") val name: String
✔ āĻĄাāĻাāĻŦেāĻে āĻāϞাāĻŽেāϰ āύাāĻŽ āĻāϞাāĻĻা āϰাāĻāϤে āĻাāĻāϞে āĻāĻি āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা āĻšā§।
đ āϝেāĻŽāύ, āϝāĻĻি āĻāĻĒāύি āĻাāύ Room āĻেāĻŦিāϞেāϰ āĻāϞাāĻŽেāϰ āύাāĻŽ user_name āĻšāĻŦে, āĻিāύ্āϤু āĻেāϰিā§েāĻŦāϞ āύাāĻŽ name āĻĨাāĻāĻŦে, āϤাāĻšāϞে āĻāĻি āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāĻŦেāύ।
ā§Š️⃣ @Ignore (āĻĄাāĻাāĻŦেāĻে āϏংāϰāĻ্āώāĻŖ āύা āĻāϰাāϰ āĻāύ্āϝ)
@Ignore val tempData: String
✔ āĻāĻ āĻেāϰিā§েāĻŦāϞāĻি Room Database-āĻ āϏংāϰāĻ্āώāĻŖ āĻšāĻŦে āύা।
✔ āĻļুāϧু āĻ
্āϝাāĻĒে āϞāĻিāĻেāϰ āĻāύ্āϝ āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা āϝাāĻŦে।
ā§Ē️⃣ @Embedded (āĻ
āύ্āϝ āĻ্āϞাāϏāĻে āĻāύāĻ্āϞুāĻĄ āĻāϰা)
āĻāĻāύāĻ āĻāĻāύāĻ āĻāĻŽāϰা āĻাāĻ āĻāĻāĻি Entity-āĻāϰ āĻŽāϧ্āϝে āĻāϰেāĻāĻি āĻ্āϞাāϏ āϰাāĻāϤে। āϤāĻāύ @Embedded āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা āĻšā§।
data class Address(
val street: String,
val city: String,
val country: String
)
@Entity
data class User(
@PrimaryKey(autoGenerate = true) val id: Int = 0,
val name: String,
@Embedded val address: Address
)
✔ āĻāĻি āĻāϞাāĻĻা Address āĻেāĻŦিāϞ āύা āĻŦাāύিā§ে User āĻেāĻŦিāϞেāĻ Address-āĻāϰ āϤāĻĨ্āϝ āϏ্āĻোāϰ āĻāϰāĻŦে।
đ Entity āĻ্āϞাāϏ āĻŦ্āϝāĻŦāĻšাāϰেāϰ āĻāĻĻাāĻšāϰāĻŖ
āĻāĻāύ āϝāĻĻি āĻāĻĒāύি āĻāĻāĻি User Entity āĻĄাāĻাāĻŦেāĻে āĻāύāϏাāϰ্āĻ āĻāϰāϤে āĻাāύ, āϤাāĻšāϞে đ
val user = User(name = "John Doe", email = "john@example.com", age = 25)
userDao.insertUser(user)
✔ Room Database āĻāĻি SQLite-āϤে āϏংāϰāĻ্āώāĻŖ āĻāϰāĻŦে! đ
đ¯ āĻāĻĒāϏংāĻšাāϰ (Final Thoughts)
✅ Entity āĻ্āϞাāϏ āĻšāϞো āĻāĻāĻি āĻেāĻŦিāϞেāϰ āĻĄিāĻাāĻāύ āϝা Room Database-āĻ āϏংāϰāĻ্āώিāϤ āĻšā§।
✅ Room API āϏ্āĻŦā§ংāĻ্āϰিā§āĻাāĻŦে Entity āĻ্āϞাāϏ āĻĨেāĻে SQLite āĻেāĻŦিāϞ āϤৈāϰি āĻāϰে।
✅ Primary Key, Column Info, Ignore, Embedded – āĻāĻ āĻāύোāĻেāĻļāύāĻুāϞো Entity āĻ্āϞাāϏ āĻাāϏ্āĻāĻŽাāĻāĻ āĻāϰāϤে āϏাāĻšাāϝ্āϝ āĻāϰে।
✅ Room Entity āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāϞে āĻĄাāĻাāĻŦেāϏ āϏংāĻ্āϰাāύ্āϤ āĻোāĻĄ āĻ
āύেāĻ āϏāĻšāĻ āĻ āĻŽেāĻāύāĻেāĻāύেāĻŦāϞ āĻšā§।
đĨ āϤাāĻšāϞে, āĻāĻāύ āĻĨেāĻে āϝāĻāύ Room Database āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāĻŦেāύ, āϤāĻāύ Entity āĻ্āϞাāϏ āϤৈāϰি āĻāϰাāĻা āĻŦাāϧ্āϝāϤাāĻŽূāϞāĻ! đđ
Comments
Post a Comment