Я создаю систему, в которой в качестве уникального идентификатора используется адрес электронной почты. Иногда мне нужно искать пользователя по адресу электронной почты. Если пользователь вводит адрес электронной почты в нижнем регистре, но база данных хранит его как смешанный регистр, это полное сканирование, или база данных все еще будет использовать индекс?
Это действительно проблема, потому что я пытаюсь подтвердить, что адрес электронной почты действителен при добавлении пользователя в систему.
Я использую Grails с MYSQL на сервере для базы данных.
В настоящее время я делаю это, чтобы найти пользователя
def c = User.createCriteria()
def currentUser = c.get() { ilike('emailAddress',message.sender.address) }
Я знаю, что могу форсировать дело в пользовательском интерфейсе, но я также хотел бы форсировать это на уровне модели
Спасибо и простите за длинный вопрос