У меня есть этот метод, который принимает целочисленный ввод и возвращает строку, он должен принимать идентификатор сотрудника и возвращать его имя, должность, телефон, электронную почту. Между тем аргументы выбора rawquery используют строки и не работают с целыми числами, как я могу это исправить?
public Cursor getEmpData(Integer ID)
{
EmpDept = getReadableDatabase();
Integer[] empRow = {ID};
Cursor c = EmpDept.rawQuery("Select name, Title, phone, email from Employee where EmpID like ?", ID);
if (c != null)
{
c.moveToFirst();
}
EmpDept.close();
return c;
}
Просто используйте toString(), как и любой другой объект:
Cursor c = EmpDept.rawQuery("Select name, Title, phone, email from Employee where EmpID like ?", ID.toString());
Если вы решите использовать вместо него примитивный int, String.valueOf(ID) сделает то же самое.
Второй аргумент rawQuery должен быть массивом String:
Cursor c = EmpDept.rawQuery("Select name, Title, phone, email from Employee where EmpID like ?", new String[] {ID.toString()});