Подтвердить что ты не робот

Параметры Android SQLite rawquery

Как я могу передать intger в rawquery в sqlite для android. Здесь он не принимает g и s в запрос. Пожалуйста, направляйте.

    int g, s;

    Cursor cur3 = database2.rawQuery("select max(UnixTimeStamp) from Quote where EmoticonID=%d and SubCategoryID=%d" ,new String [] {g,s});
4b9b3361

Ответ 1

Все места параметров должны быть обозначены символом?. Параметры для запроса всегда являются строками без изменений, поэтому ничего особенного в целых числах нет. Это должно сработать для вас:

Cursor cur3 = database2.rawQuery("select max(UnixTimeStamp) from Quote where EmoticonID=? and SubCategoryID=?" ,new String [] {String.valueOf(g),String.valueOf(s)});

Ответ 2

Параметр в вашем запросе должен быть строкой, поэтому, пожалуйста, преобразуйте эти параметры в строку и напишите свой запрос следующим образом.

Используйте String.valueOf();

Cursor c = db.rawQuery(SELECT max(UnixTimeStamp) 
                       FROM Quote 
                       WHERE EmoticonID ='"+d+"' AND SubCategoryID ='"+ s +"'");

Спасибо

Ответ 3

Cursor cur3 = database2.rawQuery("select max(UnixTimeStamp) from Quote where EmoticonID="
                                 + g + " and SubCategoryID = " + s + " ");