Непосредственным исправлением здесь было бы поместить имя в предложении WHERE
внутри одинарных кавычек, чтобы сделать строковый литерал:
string strSQL = "SELECT u.USERID, u.NAME, io.CHECKTIME, io.CHECKTYPE, io.SENSORID
FROM USERINFO u INNER JOIN CHECKINOUT io ON u.USERID = io.USERID
WHERE u.NAME = '" + conditionSearch.NAME + "'";
Однако выполнение прямой конкатенации для формирования строки запроса SQL обычно является серьезной плохой практикой. Гораздо лучшим подходом было бы использовать подготовленное утверждение с заполнителем для имени. То есть используйте запрос, который выглядит примерно так:
SELECT u.USERID, u.NAME, io.CHECKTIME, io.CHECKTYPE, io.SENSORID
FROM USERINFO u
INNER JOIN CHECKINOUT io
ON u.USERID = io.USERID
WHERE u.NAME = ?;
Тогда позвольте вашей базе данных беспокоиться о том, как правильно связать параметр имени.