Каковы некоторые причины того, чтобы предпочесть чувствительное к регистру сопоставление нечувствительному к регистру? Я вижу, возможно, скромное увеличение производительности для механизма DB в выполнении сравнений строк. Это - это? Если Ваши данные установлены на все, понижаются, или верхний регистр, затем чувствительный к регистру, мог бы быть разумным, но это - авария, если Вы храните смешанные данные случая и затем пытаетесь запросить их. Необходимо затем сказать, применяют более низкое () функция на столбце так, чтобы это соответствовало соответствующему строковому литералу нижнего регистра. Это предотвращает индексное использование в каждой DBMS, которую я использовал. Так удивление, почему любой использовал бы такую опцию.
Есть много примеров данных с ключами, которые естественно чувствительны к регистру:
Хранение данных, чувствительных к регистру, в системе, не чувствительной к регистру, чревато несогласованностью данных или даже потерей важной информации. Хранение данных, нечувствительных к регистру, в системе, чувствительной к регистру, в худшем случае несколько неэффективно. Как вы указываете, если вы знаете только имя искомого объекта без учета регистра, вам нужно скорректировать запрос:
SELECT * FROM t WHERE LOWER(name) = 'something';
Отмечу, что в PostgreSQL (и, вероятно, в других системах) можно просто создать индекс на выражении LOWER(name)
, который будет использоваться в таких запросах.
Одна из причин - управление контентом. Обычно вам необходимо идентифицировать изменения в содержании, чтобы эти изменения можно было просмотреть, записать и опубликовать. Дело имеет значение для удобочитаемого контента. «Дэйв Доу» правильный. "Дэйв Доу" совершенно неверно.
Чувствительность к регистру также важна для разработчиков программного обеспечения. Если вы не знаете желаемую чувствительность к регистру для всех систем ваших клиентов, вы все равно можете протестировать чувствительность к регистру в рамках тестирования.
Используйте индекс, нечувствительный к регистру, для вашего поля. В большинстве случаев вы не хотите манипулировать данными, чтобы найти его.
Зависит от данных, которые вы хотите хранить. Большинство файловых систем UNIX представляют собой базы данных с ключами, чувствительными к регистру. Видео на YouTube, похоже, организовано с ключами, чувствительными к регистру.
В большинстве случаев вам нужен поиск без учета регистра, но, очевидно, есть определенные исключения.