Avatar ·

Android Room: LIKE क्वेरी में पैरामीटर का सही उपयोग कैसे करें?

सभी को नमस्कार! मैं Kotlin में Android डेवलपमेंट में नौसिखिया हूँ और स्थानीय डेटाबेस के साथ काम करने के लिए Room का उपयोग कर रहा हूँ। मेरे पास एक User एंटिटी है, और मैं SQL LIKE ऑपरेटर का उपयोग करके नाम से उपयोगकर्ताओं को खोजना चाहता हूँ।

यहाँ मेरी DAO एंटिटी है:

@Dao
interface UserDao {
    @Query("SELECT * FROM users WHERE name LIKE '%:searchQuery%'")
    suspend fun searchUsers(searchQuery: String): List<User>
}

मैं इस मेथड को ViewModel से कॉल कर रहा हूँ:

class UserViewModel(private val userDao: UserDao) : ViewModel() {
    fun search(query: String) {
        viewModelScope.launch {
            val users = userDao.searchUsers(query)
            // परिणामों की प्रोसेसिंग
        }
    }
}

समस्या यह है कि जब मैं यह क्वेरी चलाता हूँ, तो Room searchQuery पैरामीटर को सही तरीके से बाइंड नहीं करता है। मुझे LIKE क्लॉज के अंदर पैरामीटर का उपयोग करने के लिए सही सिंटैक्स क्या होना चाहिए? क्या मुझे पैरामीटर को कंकैटिनेट करना चाहिए या Room में इसके लिए कोई विशेष तरीका है?