Это не работает, потому что он собирается заменить: ключ на «имя пользователя», а не на имя пользователя, поэтому ваш запрос в итоге будет:
SELECT * FROM users WHERE 'username' = 'aaron'
Привязка SQL изначально создана для замены переменной (вещи, которые меняются)и не константа (имя вашего столбца в этом примере).
Если вы все еще хотите сделать что-то подобное, вам нужно будет что-то кодировать самостоятельно, а не использовать метод -> execute.