Это связано с использованием upper
, которое меняет набор результатов.
Использование псевдонима с AS
может исправить это.
SELECT upper(customer.firstname) AS firstname FROM mydb.customer WHERE customer.email = '"+ user + "';"
Также вы должны использовать параметры, а не конкатенацию строк, при создании запросов по множеству причин, включая безопасность и тип. безопасность.
Если вы предпочитаете, вы можете вместо этого извлекать столбцы, используя индексы, изменяя
dr.GetString("firstname");
на
dr.GetString(0);
Индекс столбцов соответствует порядку столбцов в SELECT
заявление.