Параметры 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});
Ответы
Ответ 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 + " ");